我正在尝试在生产环境中首次设置socket io。我想我遇到了一些与CORS相关的问题。
目前我得到的错误是
显示临时标题
服务器端代码:
app.js
app.io.attach(server);
index.js
app.io = require('socket.io')({origins: allowed_header});
在客户端:
const socket = io(process.env.SOCKET_ADDRESS);
其中套接字地址为dev的http://localhost:8080
,生产的https://websiteName.com:8080
服务器使用nginx的默认端口。 该应用在本地运行时工作正常,但它在生产环境中记录上述错误。
由于
更新:
我尝试更改本地客户端以连接到远程服务器。它也是这样工作的。这只是我的生产客户现在有以下问题:
无法加载资源:服务器响应状态为403(禁止)
UPDATE2:
我无法真正解决问题,所以我只是做了以下事情:
origins: ['http://localhost:3000', 'http://localhost:4000', '*:*']
它现在有效,但我想知道发生了什么。我尝试将{em>:替换为https://example.com:80,但这并没有效果。