使用AngularJS UI时,Node/angularJS应用不会接收JSON Web令牌



我正在使用JWT进行身份验证的平均堆栈应用程序。这是处理令牌身份验证的脚本:

authenticationservice.js

examApp.factory('authenticationService', ['$window', function ($window) {
var authToken = {};
var store = $window.localStorage;
var key = 'auth-token';
authToken.getToken = function () {
    return store.getItem(key);
}
authToken.setToken = function (token) {
    if (token) {
        store.setItem = (key, token);
    } else {
        store.removeItem(key);
    }
}
return authToken;}]);

现在,每当我登录我的应用程序时,用户/管理员都可以成功登录,但是在控制台中,我没有收到任何令牌= null显示的令牌。

当我通过Postman工具登录应用程序并在token=零件后手动复制令牌时,我可以执行任何任务,但是通过AngularJS UI登录,我会得到

令牌身份验证失败

任何帮助将不胜感激。

您的代码中有一个问题

authToken.setToken = function (token) {
    if (token) {
        store.setItem = (key, token); // Here is the problem
    } else {
        store.removeItem(key);
    }
}

您正在分配store.setItem,而需要执行store.setItem,如下

authToken.setToken = function (token) {
    if (token) {
        store.setItem(key, token);
    } else {
        store.removeItem(key);
    }
}

最新更新