Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.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
Javascript angular.js Cookie不存储过期时间和域名_Javascript_Angularjs_Cookies - Fatal编程技术网

Javascript angular.js Cookie不存储过期时间和域名

Javascript angular.js Cookie不存储过期时间和域名,javascript,angularjs,cookies,Javascript,Angularjs,Cookies,我是新的,试图存储cookies和参数,以使cookies、域名、安全等过期。 我建立了一个工厂来储存饼干 app.factory('SetCookies',function($cookieStore,$timeout,$window){ var authService = {}; authService.create = function (username,email,id,sessionID) { var expired =

我是新的,试图存储cookies和参数,以使cookies、域名、安全等过期。 我建立了一个工厂来储存饼干

app.factory('SetCookies',function($cookieStore,$timeout,$window){
 var authService = {};   
 authService.create = function (username,email,id,sessionID) {   
                        var expired = new Date();
                        expired.setTime(expired.getTime() + (10*1000));                                                 
                        $cookieStore.put('Name',username, {expires : expired, secure:true, domain:'http://localhost/test' });
                        $cookieStore.put('Email',email, {expires : expired, secure:true, domain:'http://localhost/test' });
                        $cookieStore.put('LogCode',id, {expires : expired, secure:true, domain:'http://localhost/test' });
                        $cookieStore.put('Token',sessionID, {expires : expired, secure:true, domain:'http://localhost/test' });
                        $cookieStore.put('isLoggedIn',true, {expires : expired, secure:true, domain:'http://localhost/test' });         

                        };
return authService;
})

我已经在我的登录控制器中调用此来设置cookies

SetCookies.create(user.data.username, user.data.email, user.data.id, user.data.session_id);
登录后,我检查了主控制器上的cookies超时

$timeout(function(){
        if(!$cookieStore.get('isLoggedIn')){
                $location.path('/');
                }
    },20);
但是,当我在所有浏览器上检查它时,只有值

结果如下图截图所示

Angularjs cookiestore已被弃用。你应该改用。但我发现它可能有点膨胀。过去,当涉及cookie时,我总是选择只使用本机JavaScript。

在使用$cookies而不是$cookieStore后,控制台中出现错误“$cookies.get不是函数”,您是否在factory和controller?factory app.factory('SetCookies',function($cookies,$cookieStore,$timeout,$window)中都包含$cookies控制器app.controller('LoginController',function($scope,$rootScope,AUTH_EVENTS,AuthService,$theme,SetCookies)主控制器从工厂中删除$cookies存储,因为它不再使用。并在SetCookies$cookies.put之后添加$cookies。这不是函数吗?是cookies版本问题吗?如何更新cookies的版本。