Django REST框架令牌认证AngularJS
Posted
技术标签:
【中文标题】Django REST框架令牌认证AngularJS【英文标题】:Django rest framework token authentication AngularJS 【发布时间】:2016-08-12 21:06:30 【问题描述】:我对 Django 和 Token 身份验证以及 AngularJS 相当陌生。到目前为止,我已经制作了 Django 后端和 AngularJS 前端。我安装了 Django Rest Framework 并获得了标准令牌身份验证:
$scope.login = function ()
$http.post('link to my api',
'username': $scope.data.username,
'password': $scope.data.password,
).success(function ()
$state.go('tab');
)
.error(function ()
);
;
到目前为止,我通过获得具有正确用户名和密码的令牌成功。我看到了太多关于身份验证的选项,以至于我不知道什么适合我了,也不知道从哪里开始,因为我没有得到很多关于标准令牌身份验证的信息。我有一个带有登录屏幕的 Ionic 应用程序,Django 后端存储了用户。我希望能够使用驻留在 Django 数据库中的用户帐户登录。每当这样做时,用户就获得了使用该应用程序的权限。稍后应该可以例如获取登录用户的个人详细信息等凭据。假设我使用上面的 TokenAuthentication,我得到了令牌。但是我以后如何通过该令牌从 Django 获取用户凭据或其他任何内容?我完全迷路了。如果有人可以请带我进入正确的方法和材料。
【问题讨论】:
【参考方案1】:我发现当你实现以下 DRF 权限时:
REST_FRAMEWORK =
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.TokenAuthentication',
)
并且您在http://www.django-rest-framework.org/#example 上创建视图集,它会自动需要令牌来查看这些视图集。因此,您可以使用该令牌向 api 发送请求以获取特定数据。
【讨论】:
以上是关于Django REST框架令牌认证AngularJS的主要内容,如果未能解决你的问题,请参考以下文章
Django REST框架+ Angular项目上的令牌认证