我正在尝试实现一个API,该API在具有有效电子邮件和密码的post请求上返回令牌。我使用rest框架进行令牌身份验证。为此,我自定义了rest_framework中的ObtainAuthToken视图,以使用我自己的序列化器,该序列化器使用电子邮件而不是用户名。端点工作完美,但当我在浏览器中访问端点时,我没有获得可浏览的API。我只得到一个空白页,有以下一行:
{"detail":"Method "GET" not allowed."}
views.py
from rest_framework.authtoken.views import ObtainAuthToken
from .serializers import UserTokenSerializer
class CreateUserToken(ObtainAuthToken):
serializer_class = UserTokenSerializer
我的观点有什么问题?我想我错过了什么。
我必须这样设置renderer_classes:
from .serializers import UserTokenSerializer
from rest_framework.authtoken.views import ObtainAuthToken
from rest_framework.settings import api_settings
class CreateUserToken(ObtainAuthToken):
serializer_class = UserTokenSerializer
# To get the browsable API;
renderer_classes = api_settings.DEFAULT_RENDERER_CLASSES