django 使用DRF时,中间件请求用户返回匿名用户

gudnpqoy  于 2023-05-19  发布在  Go
关注(0)|答案(1)|浏览(147)

我不认为编辑DRF源代码有其他方法可以绕过这一部分。我想在Django中添加一个自定义中间件,但是我使用的是DRF TokenAuthentication,我的中间件拦截器需要对request.user进行身份验证。
拜托,除了我的回答还有什么更好的方法吗?

gpnt7bae

gpnt7bae1#

我认为最好的方法是创建自己的TokenAuthentication中间件,并添加到Django中间件来拦截请求,然后使用DRF的SessionAuthentication。
我检查了DRF源代码,发现request.user只在SessionAuthentication中使用,因为我已经在AuthenticationMiddleware中拦截了请求,所以SessionAuthentication是验证DRF的最佳方式。

相关问题