2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-05-02 13:28:49 +00:00

added method allowing to remove token

This commit is contained in:
Oskar Jaskolski 2019-08-28 12:30:31 +02:00
parent 3447123196
commit 105b93a0e3

View File

@ -27,6 +27,12 @@ class GetAuthToken(ObtainAuthToken):
""" Return authentication token for an authenticated user. """ """ Return authentication token for an authenticated user. """
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
return self.login(request)
def delete(self, request):
return self.logout(request)
def login(self, request):
serializer = self.serializer_class(data=request.data, serializer = self.serializer_class(data=request.data,
context={'request': request}) context={'request': request})
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
@ -39,3 +45,14 @@ class GetAuthToken(ObtainAuthToken):
'username': user.username, 'username': user.username,
'email': user.email 'email': user.email
}) })
def logout(self, request):
try:
request.user.auth_token.delete()
except (AttributeError, ObjectDoesNotExist):
pass
self.logout(request)
return Response({"success": _("Successfully logged out.")},
status=status.HTTP_200_OK)