我不使用 node.js 和 express,而是使用安全社交来玩游戏!框架,但我认为过程是相似的。
您需要创建一个服务来联系服务器以获取用户登录状态,然后存储此变量。然后,您可以将此服务注入需要了解或更改用户登录状态的每个控制器。
这个博客是我从以下位置获得实现的地方:http:
//blog.brunoscopelliti.com/deal-with-users-authentication-in-an-angularjs-web-app
这是服务:
services.factory('UserService', [function() {
var sdo = {
isLogged: false,
username: ''
};
return sdo;
}]);
这是在控制器中登录用户的示例
var User = UserService
scope.login = function() {
var config = { /* ... */ } // configuration object
$http(config)
.success(function(data, status, headers, config) {
if (data.status) {
// succefull login
User.isLogged = true;
User.username = data.username;
}
else {
User.isLogged = false;
User.username = '';
}
})
.error(function(data, status, headers, config) {
User.isLogged = false;
User.username = '';
});
}
我真的建议您阅读博客文章,因为它更详细地介绍了这一点,并且还有一些其他相关文章
然后,您可以使用 User.isLogged 变量来隐藏或显示不同的元素,并使用它来确定哪些路线可用