Можно ли использовать доступный для просмотра api с oauth?
У меня есть Django REST Framework, настроенная с помощью набора инструментов Django oauth, и у меня возникают проблемы с одновременной работой потока учетных данных клиента (через Postman) и доступного для просмотра api:
class CompanyViewSet(viewsets.ModelViewSet):
permission_classes = [
permissions.IsAuthenticated, # <== A
TokenHasReadWriteScope, # <== B
]
serializer_class = CompanySerializer
def get_queryset(self):
if self.request.auth:
user = self.request.auth.user
else:
user = self.request.user
return Company.objects.filter(owner=user)
Я новичок в обеих технологиях, но, насколько я понимаю, должны потребоваться и (A), и (B), (A) для обработки доступного для просмотра API и (B) для обработки потока учетных данных клиента (Postman).
Если я использую только (B), Postman возвращает ожидаемые значения, но доступный для просмотра api возвращает
"detail": "You do not have permission to perform this action."
Если я использую оба (A) и (B), я получаю тот же результат, что и при использовании только (B).
Если я использую только (A), тогда работают оба подхода...
Может кто-нибудь объяснить, что происходит, и каков правильный подход?