Django REST Angular $ http 403状态

时间:2017-07-25 19:39:56

标签: angularjs django django-rest-framework http-post

所以我有一个非常简单的API端点,用于确定用户是否已登录。我确实决定将其设为POST请求,以便隐藏在浏览器中访问的响应< / p>

class Check(APIView):

    def post(self, request):

        print request.user

        if request.user.is_authenticated():

            # a successful response for logged in

            return Response(status = HTTP_200_OK)


        # return an error status code for not logged in

        return Response(status = HTTP_401_UNAUTHORIZED)

注销后,我在控制台中获得AnonymousUser,并按预期获得401状态代码。但是,当以超级用户或任何其他用户身份登录时,我没有打印输出和403状态代码。这表明由于某种原因从未输入整个回调。我被告知这是一个权限问题,但我启用了AllowAny。你们有什么想法吗?

REST_FRAMEWORK = {

    'DEFAULT_RENDERER_CLASSES': [
        'rest_framework.renderers.JSONRenderer'
    ],

    'DEFAULT_PARSER_CLASSES': [
        'rest_framework.parsers.JSONParser'
    ],

    'DEFAULT_AUTHENTICATION_CLASSES': [
        'rest_framework.authentication.SessionAuthentication',
        'rest_framework.authentication.BasicAuthentication'
    ],

    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.AllowAny',
    ]

}

0 个答案:

没有答案