Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何在使用Angular.js刷新后保持登录状态_Angularjs_Login - Fatal编程技术网

Angularjs 如何在使用Angular.js刷新后保持登录状态

Angularjs 如何在使用Angular.js刷新后保持登录状态,angularjs,login,Angularjs,Login,我使用Angular.js制作了一个一页的常规应用程序,用户登录后,如果在浏览器中刷新,则登录信息消失,登录状态重置,我必须再次登录,如何保持登录状态事件在浏览器中刷新 感谢您的帮助您可以使用AngularJS服务 但是在AngularJS 1.0.7中,您不能设置路径或cookie持续时间,您需要实现自己的服务 其他一些提示: -对于AngularJS 1.0.7-您需要从 -您需要在控制器/服务中注入服务$cookieStore -您应该创建一个检查/设置/删除会话cookie的全局服务 使

我使用Angular.js制作了一个一页的常规应用程序,用户登录后,如果在浏览器中刷新,则登录信息消失,登录状态重置,我必须再次登录,如何保持登录状态事件在浏览器中刷新


感谢您的帮助

您可以使用AngularJS服务

但是在AngularJS 1.0.7中,您不能设置路径或cookie持续时间,您需要实现自己的服务

其他一些提示:

-对于AngularJS 1.0.7-您需要从

-您需要在控制器/服务中注入服务$cookieStore

-您应该创建一个检查/设置/删除会话cookie的全局服务

使用服务的一些起点示例:

app.service('global', function($cookieStore, $location, $filter) {
    var globalService = {};
    globalService.user = null;
    globalService.isAuth = function (){
        if (globalService.user == null) {
            globalService.user = $cookieStore.get('user');
        }
        return (globalService.user != null);
    };
    globalService.setUser = function(newUser) {
        globalService.user = newUser;
        if (globalService.user == null) $cookieStore.remove('user');
        else $cookieStore.put('user', globalService.user);
    };
    globalService.getUser = function() {
        return globalService.user;
    };
    return globalService;
});
登录后,调用setUser将用户(可能是服务器返回的某个令牌)保存在cookie中。 然后,您应该为每个需要登录用户的请求发送身份验证令牌数据


令牌可以是PHP会话(如果使用PHP),并且会话可以在服务器上还原。

将会话票证保存在cookie中?感谢Kcsoft,您能提供一段代码吗?目前,我将登录的用户信息保存在$rootScope中。在浏览器中刷新时是否重置$rootScope?