Я не понимаю, как использовать стороннюю библиотеку django djangorestframework-api-key

Я пытаюсь настроить аутентификацию, которая требует, чтобы пользователь отправил API-ключ и секрет в заголовке запроса, прежде чем он сможет создать данные. Я использую djangorestframework-api-key, найденный здесь: https://florimondmanca.github.io/djangorestframework-api-key/guide/. Однако я не могу понять, как правильно его использовать. Мой models.py выглядит примерно так:

class UserTier(Base):
    key = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)
    user = models.ForeignKey(User, on_delete=models.CASCADE, null=True)
    api_key = models.CharField(max_length=1000, null=True, blank=True)
    tiers = models.ManyToManyField(Tier)
    start_date = models.DateTimeField()
    end_date = models.DateTimeField()

    def save(self, *args, **kwargs):
        api_key, self.api_key = APIKey.objects.create_key(name=self.user.key)
        super(UserTier, self).save(*args, **kwargs)

Вот пример представления конечной точки API, который я сделал:

class MLBTeams(ListAPIView):
    serializer_class = MLBTeamSerializer
    queryset = Team.objects.all()
    permission_classes = [HasAPIKey]

Я выполнил это, чтобы получить ключ API, и передал его через заголовок в postman:

print(APIKey.objects.get_from_key('V9Js7vY7.s1xiK0pWtzbp1ZQA3e2NrT95qhUk1kRV')) #key stored in the UserTier object

Однако я все еще получаю следующую ошибку:

{
    "detail": "Authentication credentials were not provided."
}

Кто-нибудь знает, как правильно использовать эту библиотеку?

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