2013-12-09 2 views
12

Кажется, $cookies позволяет установить пару Key/Value.

Но мне также нужно установить параметр домена. Мне нужно установить cookie из одного субдомена веб-сайта и использовать его со всех поддоменов веб-сайта.

Я использую angularJS и Twitter Bootstrap.

ответ

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); 
} 

, как вы можете видеть; домен = XYZ не входят. Вы должны написать свой собственный кулинар, который реализует эту функцию, но это должно быть очень просто.

+1

Update: AngularJS 1.4.0-beta.6 [добавляет эта функция] (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#features). – GregL

4

Я создал модуль для AngularJS, чтобы решить эту проблему:

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

теперь вы можете просто установить опции:

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

минимальная версия AngularJS? –

+0

минимум - 0.9.9 –

+1

'cookieStore' устарел в более поздних версиях Angular, я считаю. Это, по крайней мере, в «1.4 +». – demisx

Смежные вопросы