我正在使用Django Rest Framework开发API后端.我最初使用会话身份验证开发它,不知道它不能用于发送到移动应用程序.在Postman中尝试用户登录时,我遇到了CSRF保护方面的问题.
现在,由于我必须转移到基于令牌的身份验证才能使其正常工作,我该如何进行呢?我想如何快速实现它.我浏览了stackoverflow上的教程和答案,但实际上无法实现这一点
令牌认证是最合适的认证方法吗?我应该使用默认提供的DRF模块还是JWT或其他一些实现?我可以仅使用令牌身份验证进行用户登录,还可以使用其他3个API的会话身份验证?
class UserLogin(APIView):
queryset = User.objects.all()
serializer_class = UserSerializer
def post(self, request, format='json'):
username = request.POST.get('username')
email = request.POST.get('email')
password = request.POST.get('password')
user = EmailBackend.authenticate(self,username = email, password = password)
if user:
id = user.id
return Response(id, status=status.HTTP_201_CREATED)
else:
return Response("Failure", status=HTTP_400_BAD_REQUEST)
class UserRegistration(APIView):
queryset = User.objects.all()
serializer_class = UserSerializer
def post(self, request, format='json'):
serializer = UserSerializer(data=request.data)
if serializer.is_valid():
user = serializer.save()
if user:
return Response('Success', status=status.HTTP_201_CREATED)
else:
return Response(serializer.errors, status=HTTP_400_BAD_REQUEST)
class RecommendationQuestions(generics.ListCreateAPIView):
def post(self, request, …Run Code Online (Sandbox Code Playgroud)