J’essaie de comprendre comment fonctionne la fonctionnalité de bus de messages utilisée par Discourse pour rester en ligne avec de nouveaux messages et événements. Je m’intéresse particulièrement à la manière dont elle est utilisée dans le récent plugin de chat Discourse.
Cela fonctionne sur mon site, mais lorsque j’essaie de faire une requête depuis un site externe ou une application mobile, j’obtiens l’erreur :
Access to XMLHttpRequest at 'https://forum-dev.srepe.com/message-bus/f6e2303ff7704f608ef2b821fe210e90/poll'
from origin 'http://localhost:8100' has been blocked by CORS policy:
The 'Access-Control-Allow-Origin' header contains multiple values
'https://forum-dev.srepe.com, *', but only one is allowed.
Donc, si je comprends bien, le message_bus définit ses propres « Headers » ? Existe-t-il un moyen d’utiliser les « Headers » déjà définis par la configuration de Discourse, du moins ceux qui ont un comportement CORS ?
Je cherche à éviter les « headers » en double lors de l’utilisation du message_bus. Cela me permet d’effectuer des requêtes en dehors du site du forum.
Vous avez raison. Alors, si j’utilisais le message_bus en dehors du site (comme dans une PWA ou une application hybride mobile), que me conseillez-vous ?
Je crains que ce soit trop personnalisé pour que je puisse vous conseiller ici. J’apprécie beaucoup que davantage de personnes utilisent le bus de messages, mais vous allez devoir déboguer vous-même.