一尘不染

AngularJS $ cookies.get()始终返回未定义

angularjs

我正在使用AngularJS 1.4.0和$cookies服务。以下代码将始终打印出一个空对象:

(function() {
    var app = angular.module("user-cookies-service", []);

    app.service('UserCookiesService', ["$cookies", function($cookies) {
        $cookies.put("Hello", "World");
        console.log($cookies.getAll());
    }]);
})();

我试过了:

  • 使用AngulerJS 1.3.15,并且$cookieStore在刷新浏览器时cookie不会持久存在(但至少会创建cookie)。
  • 添加有效期。
  • 确保在我的浏览器(Chrome)中启用了Cookie。
  • 尝试使用普通的旧JS,但仍然无法正常工作。

我在任何地方都找不到类似的问题。

谢谢。


阅读 331

收藏
2020-07-04

共1个答案

一尘不染

对于偶然发现此问题的任何人…

默认情况下,Chrome不允许Cookie用于本地文件。您必须使用--enable-file-cookies标志来运行它。

确保关闭了Chrome,然后打开Windows命令提示符/终端,然后运行以下命令:

<path-to-chrome>/chrome.exe --enable-file-cookies

这将允许您在本地放置/获取Cookie。

干杯!

2020-07-04