Django对登录和非登录用户使用相同的APIView

8ftvxx2r  于 2023-07-01  发布在  Go
关注(0)|答案(1)|浏览(132)

我们如何为登录和注销(公共)用户使用相同的Django rest APIView。如果身份验证令牌被传递,视图应该能够给予request.user,如果身份验证令牌没有被传递,request.user可以是匿名的。请让我知道这是可能的或不?
我试着移除
authentication_classes = [] permission_classes = []
但默认情况下,身份验证应用于所有用户。

l2osamch

l2osamch1#

而不是使用**authentication_classes = [] permission_classes = []**你可以这样做...

class ProductAPI(APIView):

    def get(self, request, pk=None):
        if request.user.is_authenticated:
            # for logged in user
        else:
            # for logged out user

相关问题