Python Django REST从服务器登录

Python Django REST从服务器登录,python,angularjs,django,rest,django-rest-framework,Python,Angularjs,Django,Rest,Django Rest Framework,我使用AngularJS作为客户端fw和django rest框架。我正在进行身份验证,我想知道是否可以发布我们/pw,然后在后端登录用户,然后可以使用@login_required进行访问 我希望避免在客户端使用$cookies,如果我没有登录,服务器会以404响应,然后angular会将用户重定向到登录页面。当用户登录时,该用户也可以访问服务器 甚至可以在localhost:8000上的django登录,然后从localhost:82访问吗 对于尝试,我已经登录到管理页面(现在用户已登录),

我使用AngularJS作为客户端fw和django rest框架。我正在进行身份验证,我想知道是否可以发布我们/pw,然后在后端登录用户,然后可以使用@login_required进行访问

我希望避免在客户端使用$cookies,如果我没有登录,服务器会以404响应,然后angular会将用户重定向到登录页面。当用户登录时,该用户也可以访问服务器

甚至可以在localhost:8000上的django登录,然后从localhost:82访问吗

对于尝试,我已经登录到管理页面(现在用户已登录),然后从localhost:82访问一些信息,但这些信息不起作用

angular.js:11442 GET http://localhost:8000/website/api/order/?format=json 404 (Not Found)


@api_view(['POST'])
def login(request):
    if request.method == 'POST':
        #print(request.data['password'])
        username = request.data['username'];
        password = request.data['password'];
        user = auth.authenticate(username=username,password=password);
        if user is not None:
            if user.is_active:
                auth.login(request,user);
                return Response(200)
        else:
            return Response(404)
    else:
        return Response(404)
验证有效,当我输入真实用户名和密码时,我得到200作为响应,如果我使用客户端的管理员帐户登录,如果我输入localhost/admin,我是否将无法访问管理员页面?当前,当我尝试访问管理页面时,我没有登录。

如果要使用,必须在同一台主机上。当您从其他主机访问页面时,服务器无法检查您是否是同一用户


如果angular.js应用程序运行在不同的主机上,您应该通过或更复杂的方法(如JSON WTA)进行身份验证。

我的回答对您有帮助吗?如果是,请接受。