dad*_*yad 4 django django-rest-framework
我有以下ModelViewSet
class UserViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows users to be viewed or edited.
"""
queryset = User.objects.all()
serializer_class = UserSerializer
authentication_classes = (TokenAuthentication,)
permission_classes = (permissions.IsAuthenticated, MyUserPermissions)
Run Code Online (Sandbox Code Playgroud)
我希望create method (POST on /users/)不要求任何身份验证.在这种情况下,如何覆盖authentication_classes?我说的ModelViewSet不是通用的API视图.
我希望create方法(POST/users /上的POST)不要求任何身份验证.
实际上那不是你想要的.您希望POST用户不需要任何权限,这将导致经过身份验证或未经身份验证的请求成功.
我建议覆盖你的权限类,以便他们总是允许POST请求.有关详细信息,请按照自定义权限文档进行操作.
基本上你会有类似的东西:
class IsAuthenticatedOrCreate(permissions.IsAuthenticated):
def has_permission(self, request, view):
if request.method == 'POST':
return True
return super(IsAuthenticatedOrCreate, self).has_permission(request, view)
Run Code Online (Sandbox Code Playgroud)
也许类似于你的其他权限类别.
| 归档时间: |
|
| 查看次数: |
1305 次 |
| 最近记录: |