Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Socket.IO 1.4.x中的传输设置_Node.js_Sockets_Heroku_Socket.io_Deployd - Fatal编程技术网

Node.js Socket.IO 1.4.x中的传输设置

Node.js Socket.IO 1.4.x中的传输设置,node.js,sockets,heroku,socket.io,deployd,Node.js,Sockets,Heroku,Socket.io,Deployd,我一直在修补Heroku上部署的作为起点: server.js的第20行尝试为socket.io设置传输,如下所示: server.sockets.manager.settings.transports=[“xhr轮询”]; 但是遇到了这个错误: 无法读取未定义的属性“设置” 从目前的研究来看,socket.io 1.4.5中似乎不推荐这种方法。然而,如果是这样的话,我不清楚我应该如何解决这个问题 我的问题类似于。但不同之处在于,一旦socket.io已由deployd的实例构造并连接到

我一直在修补Heroku上部署的作为起点:

server.js的第20行尝试为socket.io设置传输,如下所示:

server.sockets.manager.settings.transports=[“xhr轮询”];
但是遇到了这个错误:

无法读取未定义的属性“设置”

从目前的研究来看,socket.io 1.4.5中似乎不推荐这种方法。然而,如果是这样的话,我不清楚我应该如何解决这个问题

我的问题类似于。但不同之处在于,一旦socket.io已由deployd的实例构造并连接到该实例,我会尝试更改设置。

在创建时设置它:

var server = deployd({
    socketIo: {
        options: { transports : ['xhr-polling'] }
    }
});
或者,如果您不能做到这一点,请在运行时更改它(这是一种黑客行为):

(这仍然支持向后兼容:)


第三个选项是向后兼容,它起作用了,所以我重新开始工作。等我有时间再谈,我会试试你的另外两个建议。当我有结果时,我会用结果更新这个问题。谢谢你的帮助
server.sockets.server.eio.transports = ['xhr-polling'];
server.sockets.server.set('transports', ['xhr-polling']);