Chrome не устанавливает путь к файлам cookie для root - PullRequest
6 голосов
/ 17 декабря 2011

Я устанавливаю cookie в Javascript, используя следующий код:

setCookie('cart_items','product_name');


function setCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

Но путь к файлам cookie не установлен в root (/) в Chrome. Вместо этого он устанавливается на путь, с которого выполняется веб-страница !!

Я тестировал с IE и FF. Он отлично работает с обоими этими браузерами ....

Что может быть не так с Chrome или это проблема с кодом создания cookie, который я использую ??

In Chrome (16.0.912.63)

Путь: / xxxxxxxx / xxxxxxx

в FF (6,0)

Путь: /

в IE (9)

Путь: /

1 Ответ

9 голосов
/ 07 августа 2012

Причина, по которой это происходит, заключается в том, что Chrome по умолчанию не позволяет устанавливать файлы cookie для локальных файлов.См. Этот ответ для получения дополнительной информации: https://stackoverflow.com/a/347997/1324019 (текст из ответа)

Chrome не поддерживает файлы cookie для локальных файлов (или, как упоминал Питер Лайонс, localhost *), если вы не запуститеэто с флагом --enable-file-cookies.Вы можете прочитать об этом в http://code.google.com/p/chromium/issues/detail?id=535.

* Chrome поддерживает куки, если вы используете локальный IP-адрес (127.0.0.1) напрямую.так что в случае с localhost это может быть более простой обходной путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...