如何为angularJS $ cookies设置域名

时间:2013-12-09 18:29:52

标签: angularjs cookies

似乎$cookies只允许设置键/值对。

但我也需要设置域参数。我需要从网站的一个子域设置cookie,并在网站的所有子域中使用它。

我正在使用angularJS和Twitter Bootstrap。

2 个答案:

答案 0 :(得分:8)

目前这不是以角度(1.2.7)实现的。您可以查看angular.js第4348行 - 相关代码稍微减少:

if (value === undefined) {
   // Delete the cookie
   rawDocument.cookie = escape(name) + 
          "=;path=" + cookiePath + ";expires=Thu, 01 Jan 1970 00:00:00 GMT";
} else {
   // set or update the cookie value
   rawDocument.cookie = escape(name) + '=' + escape(value) + ';path=' + cookiePath);
}

你可以看到; domain = XYZ不包括在内。你必须编写自己的cookiestore来实现这个功能 - 但这应该很容易。

答案 1 :(得分:4)

我为AngularJS创建了模块来解决这个问题:

https://github.com/stevermeister/ng-biscuit

现在您只需设置选项:

cookieStore.put('x', 5, {domain: 'youdomain.com'})