【发布时间】:2021-01-21 17:27:00
【问题描述】:
作为初学者,我已经阅读了很多关于同一问题的问题。
当我通过 React 客户端以正常方式打开与套接字的连接时,只是 URL 作为参数,我没有收到此错误,连接建立。
但是当我这样做时:
const io = ioClient(webSocketUrl, {
transportOptions: {
polling: {
extraHeaders: getAuthenticationToken()
}
}
});
请求每次都返回一个 CORS 错误。
我已经尝试过:
-
像这样设置原点:
io.origins(['*:*']); -
app.use(function (req, res, next) { res.setHeader( “访问控制允许来源”, req.header("原点") || req.header("x-forwarded-host") || req.header("referer") || req.header("主机") ); res.header( “访问控制允许方法”, “获取、发布、选项、放置、修补、删除” ); res.header("Access-Control-Allow-Headers", "X-Requested-With,content-type"); res.setHeader("Access-Control-Allow-Credentials", false); 下一个(); });
-
还有这个:
app.use(cors()); app.options("*", cors());
以上都不起作用。
我将不胜感激。
【问题讨论】:
-
getAuthenticationToken返回什么? -
它返回对象:{ Authorization: "Bearer ..." } 但我找到了解决方法!谢谢!
标签: javascript node.js reactjs socket.io