我正在处理SSE事件,当我将请求从客户端发送到服务器以进行连接时,出现错误,例如“所请求的资源上没有'Access-Control-Allow-Origin'标头。”
我在后端使用Sails,并在前端进行反应。

这是一些代码供参考。

前端:-

let es = new EventSource(`http://localhost:1337/api/v1/sse?user=${username}`);


在后端,我还允许在config / security.js文件中使用cors

cors: {
    allRoutes: false,
    allowOrigins: '*',
    allowCredentials: false,
  },


注意:-如果我禁用了chrome的安全性,那么在新的chrome窗口中它的工作原理

/usr/bin/google-chrome --disable-features=CrossSiteDocumentBlockingAlways,CrossSiteDocumentBlockingIfIsolating --disable-web-security --user-data-dir="/tmp/chrome_tmp"

最佳答案

我找到了解决方案,问题是与sails cors配置有关。

应该像

cors: {
    allRoutes: true,
    allowOrigins: '*',
    allowCredentials: false,
  },

关于javascript - 在Javascript中获取SSE事件的CORS和CORB错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58608906/

10-17 01:55