我正在尝试使用python 3.5构建Flask Websocket服务器。 服务器可以在我的Macbook和ubuntu 16.04台式机服务器上工作,但是在我的工作中无法在同一台OS(ubuntu 16.04)台式机上工作。
我使用
var socket = io.connect(location.protocol +'//'+ document.domain +':'+ location.port +命名空间);
在我的客户中。
当我在家里运行服务器使用Macbook和ubuntu 16.04服务器时,打印的日志就像这样
WebSocket传输不可用。安装eventlet或gevent和gevent-websocket可以提高性能。
正在投放Flask应用程序“ SDPS”(延迟加载)
环境:生产
警告:请勿在生产环境中使用开发服务器。 改用生产WSGI服务器。
调试模式:打开
在http://127.0.0.1:9890/上运行(按CTRL + C退出)
从stat重新启动 WebSocket传输不可用。安装eventlet或gevent和gevent-websocket可以提高性能。
调试器处于活动状态!
调试器PIN:327-937-508
我的服务器正常工作。
但是我在使用Ubuntu的工作中在服务器上运行相同的代码,打印的日志就像这样。
(16863)wsgi在http://127.0.0.1:8000上启动
(16863)被接受(“ 127.0.0.1”,42058)
打开网页时,出现错误日志。
127.0.0.1--[10 / Dec / 2018 21:50:07]“ GET /socket.io/?EIO=3&transport=polling&t=1544446207144-8 HTTP / 1.1” 404 366 0.002325
为什么终端上有不同的运行日志消息?
我认为wsgi会出现一些问题。即使在我的工作中,flask-socketio git示例在台式机服务器上也不起作用。为什么通过相同的代码和相同的Ubuntu 16.04 Os会出现这些错误?
macbook,ubuntu 16.04(主页)->工作
ubuntu 16.04(job)->不起作用
答案 0 :(得分:0)
您使用相同的Socket.IO
版本吗?
据我所知flask-socketio
支持socketio-1.x
,而大多数javascript客户端使用socketio-2.x
会在编码等方面导致很多错误。您能否仔细检查一下后端和前端是相同的socketio
版本?