Socket.io 由于 nsp 而无法连接

Socket.io failing to connect because of nsp

我对 socket.io@^1.0 有疑问。设置很好,因为它在本地工作,服务器配置正确,当我尝试从我的 Angular 应用程序连接到服务器时,它工作正常:

io.connect("localhost:8080");

连接已建立,我可以发送和接收事件。现在在生产环境中,"locahost:8080"替换为Launched服务器的地址:

io.connect("https://domain-name.com/api");

我知道这里的问题是 /api,因为 socket.io 正在将其视为命名空间并尝试连接到它,在我的网络控制台中我看到 500 Internal server error with地址 https://domain-name.com 没有 /api 当我替换请求 url 以添加 /api 我得到 200 OK 类型八位字节流。

所以这里的问题是:如何在不考虑命名空间的情况下连接到正确的路径?

提前感谢您的帮助:)

我想你想使用 path 选项(已记录 here):

// client
var socket = io.connect('https://domain-name.com/', {
  path : '/api/socket.io'
});