【发布时间】:2015-04-05 19:32:32
【问题描述】:
我在服务器端使用 Pyramid Framework 1.5 和 Gevent-socketio 并在客户端使用 Socket.IO V1.3 时遇到问题。 我遇到的问题是,当我在客户端打开套接字时,服务器会抛出内部服务器错误(500)。 此外,终端输出以下行:
socket = environ['socketio']
KeyError: 'socketio'
我已经搜索过这个问题,我读到它与我正在使用的 WSGI 服务器有关(目前是 Gunicorn。也许我使用它或设置它的方式是错误的)但我不能'找不到任何关于这个问题的好资源。
我有几个问题:
- 首先,Pyramid 和新的 Socket.IO V1.3 之间是否有很好的集成(gevent-socketio 项目在过去 1 年没有更新,从那时起 Socket.IO V1 发布了重大更改)。
- 我读到我必须用 Gevent 或其他东西设置 Gunicorn,但我不能这样做。有什么好的资源或解释吗?
- 最后但并非最不重要的一点,题外话,在生产中,人们如何运行他们的应用程序?使用服务器中的终端?听起来有些奇怪。有人可以解释我应该如何在生产(而不是)时使用 Gunicorn 和 Pyramid 以正确的方式运行应用程序吗?我应该运行什么文件以及如何运行?它应该包含什么?
谢谢!
更新:
也许我不够清楚,但是当我使用旧版本(例如,Socket.IO V0.9.6)时,问题不会发生。但是当我将 JavaScript 文件从 Socket.io 版本 0.9.6 更改为 Socket.IO 版本 1(及更高版本)时,问题就出现了。
【问题讨论】:
-
请大家帮忙!
标签: socket.io pyramid gunicorn