0

我正在用 Django编写一个类似于这个包的实时聊天室。它使用命令运行一个单独的 WebSocket 服务器

python manage.py runserver_socketio

但我不知道如何让runserver_socketio命令加载我的处理程序。我可以在包中找到的唯一相关代码位于django-socketio/django_socketio/management/commands/runserver_socketio.py

server = SocketIOServer(bind, handler, resource="socket.io")
....
handler = WSGIHandler()

但是到底为什么这handler与我的代码有关?

4

1 回答 1

0

我知道了。该manage.py runserver_socketio命令启动几乎相同的服务器manage.py runserver。唯一的区别是这个新服务器可以处理 websocket 协议。

要看到这一点,假设继续runserver运行。只需访问,您将获得与 相同的网页。127.0.0.1:8000runserver_socketio127.0.0.1:9000127.0.0.1:9000127.0.0.1:8000

秘诀就在于django-socketio/django_socketio/example_project/urls.py,参考哪个django-socketio/django_socketio/urls.py。在这一秒urls.py,我们可以看到它加载events.py到我们的项目中。

于 2014-10-29T05:57:37.397 回答