如何解决如果在使用 CLient Credentials 的 Oauth2 请求期间用户为 None,则 Django Rest Framweork 中的限制
我将 Django Rest Framework 与 Django OAuth Toolkit 结合使用,以允许外部组织请求端点。
我使用 Credentials Client 授权类型来请求访问令牌。enter image description here
当我尝试请求我的端点时出现此错误:“NoneType”对象没有“is_authenticated”属性。 异常是在 AnonThrottleClass 的 get_cached_key 函数中引发的。
实际上 request.user 是 None 和 Client Credentials,所以这个函数是不能通过的。
这是我的视图:
class StudentViewSet(
mixins.CreateModelMixin,mixins.UpdateModelMixin,mixins.RetrieveModelMixin,mixins.ListModelMixin,mixins.DestroyModelMixin,viewsets.GenericViewSet,):
serializer_class = StudentSerializer
authentication_classes = (OAuth2Authentication,)
permission_classes = (TokenHasScope,)
required_scopes = [
oauth2_settings.READ_SCOPE,oauth2_settings.WRITE_SCOPE,]
schema = is_schema_for_open_api_doc(True)
queryset = Student.objects.all()
你能帮我解决这个问题吗?
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。