You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
flyapps/fir_ser/api/views/logout.py

19 lines
638 B

from rest_framework.views import APIView
from api.utils.auth import ExpiringTokenAuthentication
from api.models import Token
from django.core.cache import cache
from rest_framework.response import Response
from api.utils.permission import LoginUserPermission
class LogoutView(APIView):
authentication_classes = [ExpiringTokenAuthentication]
permission_classes = [LoginUserPermission]
def delete(self, request):
user = request.user.pk
auth_token = request.auth
cache.delete(auth_token)
Token.objects.filter(user=user,access_token=auth_token).delete()
return Response({"code": 1000})