Я использую аутентификацию JWT. Я использую этот тип приложения авторизации.
Я пытаюсь понять, как использовать это в представлении.
Пример. Скажем, я хочу разрешить пользователю создавать утвержденное место, только если у него есть правильные разрешения. Что бы я добавил к этому представлению, чтобы получить доступ к пользователю?
Я знаю, что у django request.user
, но как мне это включить? Всегда ли он включен, а request.user равен нулю, если токен не передан в заголовок? Или это промежуточное ПО? Проблема, с которой я столкнулся в конечном итоге, заключается в том, что до этого момента много информации, но очень мало о том, как на самом деле использовать JWT в представлении.
пожалуйста, помогите.
# for creating an approved venue add ons later
class CreateApprovedVenue(CreateAPIView):
queryset = Venue.objects.all()
serializer_class = VenueSerializer
JWT Docs
https://getblimp.github.io/django-rest-framework-jwt/
остальные рамки документов разрешений
http://www.django -rest-framework.org / апи-гид / разрешения /
поэтому я обнаружил этот ресурс и сейчас смотрю на него.
https://code.tutsplus.com/tutorials/how-to-authenticate-with-jwt-in-django--cms-30460
Этот пример является светом затенения:
# users/views.py
class CreateUserAPIView(APIView):
# Allow any user (authenticated or not) to access this url
permission_classes = (AllowAny,)
def post(self, request):
user = request.data
serializer = UserSerializer(data=user)
serializer.is_valid(raise_exception=True)
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)