Token 类型的对象 JSON 不可序列化
Object of type Token is not JSON serializable
views.py
这是我的views.py。当我想登录时出现错误。
class AuthAPIView(APIView):
def post(self, request, format=None):
data = request.data
username = data.get('username', None)
password = data.get('password', None)
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
token = Token.objects.get(user=user)
return Response(token)
else:
return Response(status=status.HTTP_404_NOT_FOUND)
else:
return Response(status=status.HTTP_404_NOT_FOUND)
我在注册时为每个用户创建了一个令牌。现在,当我想进行身份验证时,出现错误。我想换取我的令牌。
您正在 return 创建一个 Token
不可序列化的 JSON 模型对象。
不确定您的 Token
模型的结构是什么。如果您只想 return 一个字符串标记,那么只有 return 那个而不是整个标记对象。如果您想 return 完整的 Token 对象,您可以为 Token 模型创建一个 Serializer 并使用它来序列化 Token 对象和 return 它。
views.py 这是我的views.py。当我想登录时出现错误。
class AuthAPIView(APIView):
def post(self, request, format=None):
data = request.data
username = data.get('username', None)
password = data.get('password', None)
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
token = Token.objects.get(user=user)
return Response(token)
else:
return Response(status=status.HTTP_404_NOT_FOUND)
else:
return Response(status=status.HTTP_404_NOT_FOUND)
我在注册时为每个用户创建了一个令牌。现在,当我想进行身份验证时,出现错误。我想换取我的令牌。
您正在 return 创建一个 Token
不可序列化的 JSON 模型对象。
不确定您的 Token
模型的结构是什么。如果您只想 return 一个字符串标记,那么只有 return 那个而不是整个标记对象。如果您想 return 完整的 Token 对象,您可以为 Token 模型创建一个 Serializer 并使用它来序列化 Token 对象和 return 它。