使用 AngularJS 的带有 cookie 的 EventSource

EventSource with cookies using AngularJS

我一直在考虑使用 EventSource 将服务器事件推送到客户端,但我需要客户端能够识别自己,这样它就不会只获取每个客户端的每个事件。我正在尝试使用 cookie 来实现这一点,但不知何故,cookie 似乎从未通过。谁能给我指出一个创建 EventSource 并随请求发送 cookie 的示例?

听起来像是 CORS 问题。试试这个(仅适用于开发,不适用于产品):

客户端你应该有withCredentials: true标志:

const eventSource = new EventSource(subscribeUrl, { withCredentials: true });

服务器端确保发送那些headers:

Access-Control-Allow-Origin: YOUR_DOMAIN
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: *