我現在用的是Angular-satellizer
擴展登錄/註冊功能,但我停留在7號
令牌被保存到localStorage
但我當刷新不見了該頁面消失,並且$auth.isAuthenticated()
函數返回false。
.controller('loginCtrl', function($scope, $state, $auth, jwtHelper) {
$scope.login = function() {
$auth.login($scope.user)
.then(function(response) {
var gelenToken = response.data;
var tokenPayload = jwtHelper.decodeToken(gelenToken.token);
console.log(JSON.stringify(tokenPayload)); // Output:{"sub":"1","iat":1496346513,"exp":1497556113,"data":{"role":"admin"}}
localStorage.setItem('token', JSON.stringify(tokenPayload));
$state.go('baba.manga');
})
};
})
衛星manuel說'解析令牌並將其保存到localStorage'。解析意味着解碼權嗎? – Nasuh
我不這麼認爲,解析意味着提取並保存,而不是解碼,您必須將編碼的令牌發送給未解碼的服務器。 –
好的。我找到了問題。令牌只爲'login.html'保存,不適用於所有頁面。現在我需要用'index.html'或'$ scope.isAuthenticated = function()'共享這個標記,並用'index.html'的狀態共享這個函數。哪個更好? – Nasuh