drf认证简单分析

之前在简单的分析view()的时候 分析到了dispatch中

 

 

 看看请求初始化

 

 

 可以看看到里面有获取的操作,在进去看看

 

 

用列表生成式取值执行,看看取的什么

 

 

 取的是从配置文件中获取的,那么既然是配置文件那就是全局配置的,局部配置的话就直接authentication_classes

在继续看看

 

 

 

 

 

 跟进去发现认证了,

self.perform_authentication(request)    

对传入请求执行身份验证。

self.check_permissions(request)

检查是否应允许请求。
如果不允许请求,则引发适当的异常。

self.check_throttles(request)

检查是否应限制请求。
如果请求受到限制,则引发适当的异常。

看看self.perform_authentication(request)    

 

 继续跟进去看看

 

 这已经在request里面了,那么self.authenticators在什么时候赋值的?

 

 

 

可以看到在上面的时候就已经赋值了

意思就是先把认证写上,写完后就直接执行下面进行验证

 最终到这里 尝试使用每个身份验证实例对请求进行身份验证

 

 重写方法

 

posted @ 2022-03-20 23:25  咖喱给给啊  阅读(47)  评论(0)    收藏  举报