2010-08-20 8 views
10

Сначала установите cookie:JQuery расширения печенья установит печенье с путем, но не будет читать его

jQuery.cookie('monster', 'big', { path : '/sesame/'}); 

Далее, попробуйте прочитать его:

jQuery.cookie('monster'); 

Firefox говорит мне, что cookie действительно был установлен. Значение равно big, а путь /sesame/. И все же, когда я пытался читать куки, это не сработало.

Альтернативная версия вопроса: Как указать путь, когда чтение a cookie?

В качестве эксперимента я использовал следующий синтаксис, но он устанавливает cookie, а не читает его.

$.cookie('cookie_name', { path: '/path/' }); 

ответ

8

JQuery cookie extension ищет атрибут document.cookie, чтобы найти файл cookie и прочитать его значение. Document.cookie будет возвращать только пары имени, значения для куки-файлов по пути текущего документа . Однако он позволяет вам установить cookie для пути другой с текущего пути к документу.

Поэтому это не является ограничением/ошибкой в ​​плагине jQuery cookie; скорее это побочный продукт того, как файлы cookie обрабатываются в Javascript.

8

Браузер не отправит cookie на путь, на котором он не установлен!

Браузер отправляет только имя и значение cookie. Невозможно узнать путь печенья или время истечения.

+0

Можете ли вы перефразировать его? Я не уверен, что вы имеете в виду (учитывая мой вопрос). –