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

标签 node.js sockets heroku socket.io deployd

我一直在使用 this gist 在 Heroku 上修改 deployd作为起点:

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

server.sockets.manager.settings.transports = ["xhr-polling"];

但是遇到这个错误:

Cannot read property 'settings' of undefined.

从迄今为止的研究来看,这种方法似乎在 socket.io 1.4.5 中已被弃用。但是,如果是这样,我不清楚应该如何解决此设置。

我的问题类似于this one 。但不同之处在于,一旦 socket.io 已经由已部署的实例构建并附加到已部署的实例,我就会寻求更改设置。

最佳答案

在创建时设置它:

var server = deployd({
    socketIo: {
        options: { transports : ['xhr-polling'] }
    }
});

或者,如果你不能这样做,请在运行时更改它(这是一个黑客):

server.sockets.server.eio.transports = ['xhr-polling'];

(为了向后兼容,仍然支持此功能:)

server.sockets.server.set('transports', ['xhr-polling']);

关于node.js - Socket.IO 1.4.x 中的传输设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35674353/

相关文章:

node.js - 如何创建一个可以向其传递参数的nodejs模块?

javascript - 在 ubuntu 上安装 node-gyp 时出错

node.js - 如何将 Node Js、Express 和 Mongo DB 应用程序部署到 Windows Server 2012 R2

javascript - 将属性分配给Javascript中未声明的变量

java套接字编程问题(发送和接收数据)

android - 使用 AudioTrack 从 Android 上的套接字流式传输音频

ruby-on-rails - Heroku Ruby on Rails 升级崩溃

android - 创建客户端套接字失败

ios - 解析服务器推送适配器 : APNS cannot find vaild connection

ruby 博客 : Toto vs Nesta