javascript - 在 ec2 实例上使用 socket.io 时出现 "websocket connection invalid"错误?

标签 javascript node.js sockets websocket socket.io

我有一个使用 node.js 的 express 和 socket.io 编写的网络应用程序,该应用程序在本地主机上运行良好,但是当我推送到我的 ec2 服务器时,它连接大约 20 秒然后断开连接,然后再次连接等...

给我 Node 控制台上的错误作为

warn  - websocket connection invalid
info  - transport end

服务器

app = express()
server = http.createServer(app)
io = require('socket.io').listen(server)

客户

socket = io.connect()

我知道问题不在我的代码上,因为我在本地主机上对 Web 应用程序进行了全面测试,所以唯一的问题是此代码运行的位置,即我的 ec2 实例?

最佳答案

出现此错误的可能原因有很多:

  1. 您使用的浏览器部分支持或不支持 websockets。你可以查看你的浏览器是否支持websockets here .
  2. 使用不支持 websocket 的代理。如果您的客户端和您的 Node 服务器之间有一些不支持 websocket 的服务器(负载均衡器)。
  3. 您正在使用 socket.io 版本 0.9.1/0.9.1-1。 此行为已报告 bug对于这个版本。所以升级到最新的 socket.io 版本 0.9.14。
  4. 浏览器连接受到防火墙/阻止。
  5. 代码相关问题。

关于javascript - 在 ec2 实例上使用 socket.io 时出现 "websocket connection invalid"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16208491/

相关文章:

Javascript:正则表达式转义空间

java - 除非流关闭,否则 BufferedWriter 不会发送文本

javascript - 如何找到最常用的JS文件?

javascript - 使用 js/jquery 从 csv 创建谷歌图表

用户需要调用的Javascript函数

node.js - 如何使用 Node.js 建立 SSH 连接

javascript - 为什么 "RangeError: Invalid status code: 0",firebase 函数

c++ - 了解 Apache Thrift 与 TCP 套接字服务器的特点?

java - Android Socket 连接测试

javascript - 我们如何设置本地文件的内容类型 header ?