在 django oauth 工具包中引发异常
raise exception in django oauth toolkit
我正在使用 Django 2.x 和 django-oauth-toolkit 生成访问令牌。
我已经编写了一个自定义令牌视图 运行 对帐户进行了一些检查,然后为用户生成了访问令牌。如果自定义检查失败,我想用 400 状态码引发异常。
class CustomTokenView(TokenView):
def create_token_response(self, request):
login = request.POST.pop('username', None)
username = get_user_model().objects.filter(
email=login[0]
).last()
if not username.verified:
raise HttpResponse(content='User not verified', status=status.HTTP_400_BAD_REQUEST)
request.POST._mutable = mutable
return super(TokenView, self).create_token_response(request)
但这给出了错误
TypeError: exceptions must derive from BaseException
我也试过
from rest_framework.response import Response
return Response('User not verified', status=status.HTTP_400_BAD_REQUEST)
但是 none 正在工作。
您无法raise
回复。响应也不例外。相反,您可以 return 它或从 django-rest-framework 引发实际异常(所有可用异常描述 here,select 最适合您的情况。在我看来它应该是你的自定义,创建自 APIException
).
我正在使用 Django 2.x 和 django-oauth-toolkit 生成访问令牌。
我已经编写了一个自定义令牌视图 运行 对帐户进行了一些检查,然后为用户生成了访问令牌。如果自定义检查失败,我想用 400 状态码引发异常。
class CustomTokenView(TokenView):
def create_token_response(self, request):
login = request.POST.pop('username', None)
username = get_user_model().objects.filter(
email=login[0]
).last()
if not username.verified:
raise HttpResponse(content='User not verified', status=status.HTTP_400_BAD_REQUEST)
request.POST._mutable = mutable
return super(TokenView, self).create_token_response(request)
但这给出了错误
TypeError: exceptions must derive from BaseException
我也试过
from rest_framework.response import Response
return Response('User not verified', status=status.HTTP_400_BAD_REQUEST)
但是 none 正在工作。
您无法raise
回复。响应也不例外。相反,您可以 return 它或从 django-rest-framework 引发实际异常(所有可用异常描述 here,select 最适合您的情况。在我看来它应该是你的自定义,创建自 APIException
).