正确安装 django-socketio

直接使用 pip 安装,连 example project 都运行不了。。。

要正常使用,关键是要使用正确版本的依赖包

  • Django (1.5.5)
  • django-socketio (0.3.2)
  • gevent (0.13.6) 
  • gevent-socketio (0.2.1)
  • gevent-websocket (0.2.3)
  • greenlet (0.4.4)

gevent 的版本一定要小于 1.0,0.X 的其他版本还没有测试过

另外对于gevent-socketio需要在 handler.py 中修改成如下:

54 # In case this is WebSocket request, switch to the WebSocketHandler
55 if transport in (transports.WebsocketTransport, 
56                 transports.FlashSocketTransport):
57             self.__class__ = WebSocketHandler
58             WebSocketHandler(self)
59             self.handle_one_response(call_wsgi_app=False)
60             session = self.server.get_session()
61         else:
62             session = self.server.get_session(session_id)

 PS: 目前最近版的 django-socketio 支持的是 0.6.1 的 socket.io client 。。。

原文地址:https://www.cnblogs.com/ksh123/p/4012431.html