簡體   English   中英

$ cookie在angularjs中不起作用

[英]$cookies not working in angularjs

我想保持用戶登錄狀態,甚至刷新瀏覽器。 但是當我在angularjs中應用$ cookies時發現一個問題。 以下是我的代碼:

function signIn() {
    var params = {email: vm.email, password: vm.password};
    Service.authBuffer = _.extend(Service.authBuffer, params);
    $.ajax({
        type:      'POST',
        url:       GetEndpointUrl('/api/auth/login'),
        dataType:  "jsonp",
        data:      params,
        success: function(data) {
            console.log("login data", data);
            $scope.safeApply(function() {
                Service.authBuffer = _.extend(Service.authBuffer, data);
                console.log("login auth data", Service.authBuffer);
                $location.path('/task');
                var cookieExp = new Date();
                cookieExp.setDate(cookieExp.getDate() + 7);
                $cookies.put('Service.authBuffer', Service.authBuffer.email, { expires: cookieExp });
            })            
        }
    })     
}

所以我想知道如何更改代碼以使$ cookies起作用。

您可能尚未注入ngCookies模塊。 使用這樣的東西

angular.module('cookiesExample', ['ngCookies'])

.controller('ExampleController', ['$cookies', function($cookies) {
  // Retrieving a cookie
  var favoriteCookie = $cookies.get('myFavorite');
  // Setting a cookie
  $cookies.put('myFavorite', 'oatmeal');
}]);

參考鏈接

回答以下幾個問題以更好地理解問題:-請提供您在瀏覽器的控制台日志中獲得的錯誤消息-您是否包含angular-cookies庫? -您是否在應用模塊中注入了ngCookies? -您是否在控制器中注入了$ cookies?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM