我正在使用Angular 1.6.4,Express 4.15.2和快速會話。 我想通過檢查req.session.user參數的存在來捕獲用戶是否未經授權訪問特定路由。如果他不是,我想發送401響應狀態並更改Angular狀態。在AngularJS 401上獲得響應對象
問題是我沒有得到任何響應對象來檢查狀態。 我曾嘗試使用攔截器,註銷error.response.body,註銷一切真的要找出它在哪裏,我失去了響應對象。
這裏有一些代碼,任何幫助將不勝感激!
表示:
app.get('/update', sessionCheck, function(req, res) {
res.send('session');
});
function sessionCheck(req, res, next){
if(req.session.user) {
next();
} else {
console.log('before');
return res.status(401).send('Unauthorized');
console.log('after');
}
}
角:
.state('update', {
url: '/update',
views: {
"": {
templateUrl: 'templates/update.html',
controller: function($http) {
return $http.get('/update').then(function(response) {
console.log('Ok response' + response);
}, function(error) {
console.log('Error response' + error.response.body);
});
},
},
"carousel": {
templateUrl: "templates/carousel.html"
},
"footer": {
templateUrl: "templates/footer.html"
}
}
})
你在網絡標籤請求中看到了什麼? – mehulmpt
@mehulmpt在屏幕上添加了 – amamagen
的鏈接,您的回覆正確無誤。您在您的nodejs代碼中發送401未授權的未授權用戶,因此它在您的網絡選項卡中顯示爲 – mehulmpt