【发布时间】:2012-12-10 17:59:54
【问题描述】:
一旦使用 django-socketio 通过 Socket.IO 连接从客户端 (JS) 到服务器 (django/python) 发送消息,是否可以确定在呈现页面时哪个用户通过了身份验证?
在这种情况下,视图由 django 提供,它需要身份验证——通常在服务器上我可以执行 user = request.user,但在 events.py 文件中,request.user 只返回一个 @987654325 @ 目的。这是有道理的,因为 websocket 服务器是一个与 django web 服务器完全不同的进程,因此用户没有在该套接字连接上进行身份验证。
我想我必须想出一些巧妙的代码来将用户 ID 嵌入到发送到服务器的消息中,在这种情况下,我需要添加一些握手以确保结束用户不能欺骗它。
有没有人想出一个聪明的办法来解决这个问题?
【问题讨论】:
-
虽然我没有任何代码供您重用,但这似乎是 socket.io 的一个已知限制 - stackoverflow.com/questions/4311180/…
标签: javascript python django socket.io