Класс пользовательских разрешений Django не работает

Я использую Django REST для своего API.

Вот мой пользовательский класс разрешений: permissions.py:

from rest_framework.permissions import BasePermission
from rest_framework.response import Response


class ItemsPermissions(BasePermission):
    def has_permission(self, request, view):
       
        try:
            request_data = request.data
            print(request_data)
            auth_token = request_data['returnedDataFromAuthAPI']
            if("accessToken" in auth_token):
                auth_token = auth_token['accessToken']
                Response({"Permission Granted - AccessToken": auth_token})
                return True
            #else
            Response({"message": "No Auth Token Provided! You Need To Login!"})
            return False
        except Exception as ex:
            return Response({"message": ex})

в файле views.py:

class ListItems(generics.ListAPIView):
    permission_classes = [ShippingPermissions]
    queryset = myModel.objects.all()
    serializer_class = mySerializer

в urls.py:

url_patterns = [
    path("/items/list/", ListItems.as_view()),
]

У меня есть микросервис аутентификации, от которого я получаю токен JWT, чтобы пользователь имел доступ к представлениям. В классе ItemsPermissions я проверяю токен.

Мой вопрос: Я хочу предоставить пользователю доступ к классу ListItems, после предоставления token, но если token не предоставлен, то пользователь не должен иметь доступ.

Однако по какой-то причине я могу получить доступ к конечной точке /items/list/, и она вообще не запрашивает токен.

В чем проблема?

Вернуться на верх