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


看看请求初始化

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

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

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

跟进去发现认证了,
self.perform_authentication(request)
对传入请求执行身份验证。
self.check_permissions(request)
检查是否应允许请求。
如果不允许请求,则引发适当的异常。
self.check_throttles(request)
检查是否应限制请求。
如果请求受到限制,则引发适当的异常。
看看self.perform_authentication(request)

继续跟进去看看

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


可以看到在上面的时候就已经赋值了
意思就是先把认证写上,写完后就直接执行下面进行验证

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

重写方法

浙公网安备 33010602011771号