为什么未经授权的用户即使我使用'IsAuthenticated'也能访问我的REST API?

时间:2015-10-18 19:59:15

标签: django api django-rest-framework

所以这是我的views.py中的一个函数:

@api_view(['GET'])
@csrf_exempt
@authentication_classes(BasicAuthentication)
@permission_classes((IsAuthenticated,))
def UserAPI(request):
    userlist = MyProfile.objects.all()
    serializer = UserSerializer(userlist, many=True)
    return Response(serializer.data)

现在,如果我转到此URL,它会显示所有用户信息,尽管没有登录。我不确定我做错了什么?我假设我不需要在我的设置中设置DEFAULT_AUTHENTICATION_CLASSES,因为我正在使用装饰器。

1 个答案:

答案 0 :(得分:1)

我认为那里存在语法错误:对于authentication_classes,您应该发送一个可迭代的,而不是单个元素。你能尝试使用以下代码:

 $_GET['p']