Estoy tratando de entender cómo funciona la función de bus de mensajes que utiliza Discourse para mantenerse en línea con nuevos mensajes y eventos. Específicamente, me interesa cómo se utiliza en el reciente plugin de chat de Discourse.
Haciendo algo de ingeniería inversa, veo que cuando entro a una sala de chat, cada vez que el bus de mensajes hace una consulta a través de “MISITIO.COM - For Sale”, las cabeceras de la solicitud se duplican, por ejemplo:
Eso funciona en mi sitio, pero cuando intento hacer una solicitud desde un sitio externo o una aplicación móvil, obtengo el error:
Acceso a XMLHttpRequest en 'https://forum-dev.srepe.com/message-bus/f6e2303ff7704f608ef2b821fe210e90/poll' desde el origen 'http://localhost:8100' ha sido bloqueado por la política de CORS: La cabecera 'Access-Control-Allow-Origin' contiene múltiples valores 'https://forum-dev.srepe.com, *', pero solo se permite uno.
Entonces, si entiendo bien, ¿el message_bus establece sus propios “Headers”? ¿Hay alguna forma de utilizar los “Headers” ya establecidos por la configuración de Discourse, al menos aquellos con comportamiento CORS?
Busco evitar “headers” duplicados al usar message_bus. Esto me permite hacer solicitudes fuera del sitio del foro.
Me temo que esto es demasiado personalizado para que pueda ofrecerle asesoramiento aquí, aprecio totalmente que más gente utilice el bus de mensajes, pero tendrá que depurar las cosas aquí.