Django 频道登录页面

Django Channels Login Page

我有一个使用 Django 和 Vue 的网站,托管在 Docker 容器中,还有其他容器,如 Celery、Redis、Nginx、Postgress 等。我想使用 Django Channels,但似乎无法使用弄清楚登录页面是如何工作的。

我不确定我是否可以只使用频道来制作整个网站,或者我是否必须将 django.contrib.authDjango REST framework 之类的东西与频道一起使用,我尝试过使用 Django REST framework 但是出现 CORS 错误。

根据 Channels Autentication Docs 有登录和注销方法,但它们位于 receive() Channels 消费者中,我打算用 connect() 方法做什么?我打算在验证之前接受 websocket 连接吗?

或者我打算使用另一种方法来验证我的登录页面?

我只需要一点指导,非常感谢你的帮助。

中间件有两种选择,第一种是编写中间件并将一些数据放入 header 中,例如用户名和密码或其他内容并对其进行验证,第二种选择是编写 API 提供用户名和密码并生成访问令牌以放入 header 并在中间件中验证令牌,最后一个选项更安全