我有一个已经用Django编写的web应用程序,它运行得很好。我想增加一些角度的看法,因为计划是向那个方向移动。我面临的一个问题是,我的一些控制器需要登录,对于django,我们通常使用@login_required装饰器,一切都很好。
但是,由于angular.js调用控制器(对于api),重定向不会发生。我假设我必须以某种方式检查django用户是否直接从角度侧面进行身份验证。关于如何在角度上证实这一点,有什么解释吗?我一直在与此作斗争,并阅读了以下内容:
https://docs.angularjs.org/api/ng/service/$http
prignano/角-js-with-django-bde834dbd61e
http://www.django-rest-framework.org/api-guide/authentication/
基本上,我想确认,通过角,我的用户已登录,如果没有,重定向到登录页面。
编辑
我正在实现一个请求拦截器,如下所示:
但是,在django @login_required中,它返回重定向页面的html。有没有办法获取URL并将用户转发到那里?
发布于 2015-03-04 06:06:09
你可以使用。假设一个视图需要登录,用户在没有登录的情况下向视图发出请求,那么@login_required装饰器将返回响应代码401的响应。在auth拦截器中,如果状态代码为401,则截取状态代码,然后将用户重定向到登录页。
示例站点:http://witoldsz.github.io/angular-http-auth/
https://stackoverflow.com/questions/28847569
复制相似问题