使用异步 websocket 而不是 Django 通道进行用户身份验证



我之前有一个websocket服务,使用python websocket包编写,可以访问django模型。是否可以在不使用 django 通道的情况下检查消息是否来自经过身份验证的用户?

好吧,没有答案,所以你可以看着我工作。

  • 我制作了一个替代登录 api 速率,限制为每分钟 3 个请求,如果您向其发送用户名和密码,它将返回令牌。
  • 我更改了 django 登录模板以包含令牌查询
  • 令牌查询在用户名和密码发布到 Django 服务器之前有效
  • 令牌在登录前检索并放入浏览器的会话存储中
  • 用户登录,WebSocket 页面已加载,我们在会话存储中获得了令牌
  • WebSocket 连接是使用会话存储中的令牌创建的,因此 Webscoket 服务器现在具有用于身份验证的令牌
  • 使用令牌进行身份验证以检索服务器端的帐户数据,并据此将请求路由到 WebSocket 对象。

最新更新