jQuery $.cookie (домен:), из-за которого cookie не устанавливается

#jquery

#jquery

Вопрос:

Привет, приведенный ниже код устанавливает cookie на основе идентификатора ссылки, по которой нажата ссылка (это значение), это работает, но что o нужно сделать, это установить домен, я прочитал, как это сделать, установив domain в значениях, когда я установлю domin, он вообще не установит cookie

Работает:

 jQuery(document).ready(function(){
    $(".htabs a").click(function(e){
        $.cookie('siteVistedCookie', $(this).attr("id"), { expires: 7, path: '/'});
        });
    });
  

Не работает

 jQuery(document).ready(function(){
    $(".htabs a").click(function(e){
        $.cookie('siteVistedCookie', $(this).attr("id"), { expires: 7, path: '/', domain: 'www.xample.com' });
        });
    });
  

Комментарии:

1. вы уверены насчет www? попробуйте изменить: ‘xample.com ‘

2. Выполняется ли приложение в www.xample.com ?

Ответ №1:

Здесь просто предположение, но если домен, который вы пытаетесь установить, не является доменом сайта, на котором размещена страница, тогда домен (хост) не будет установлен в cookie на то, что вы вводите в качестве домена в установщике cookie.

Другими словами, если домен не является доменом размещенной страницы, вы пытаетесь установить сторонний cookie, который большинство современных браузеров не допускают.

Если ваш сайт не xample.com и вы запускаете страницу как xample.com/testcookie.html (или как бы вы ни называли свою тестовую страницу), домен (хост) файла cookie не будет установлен на xample.com .

Ответ №2:

Запустите скрипт без настройки домена, затем посмотрите, какой cookie он устанавливает. Какой домен он показывает? Совпадает ли это с тем, что вы вводите в свойство домена?

Домены cookie должны быть установлены с тем же (вспомогательным) доменом, на котором находится страница. Например, если ваша страница находится на

http://www.somesite.com/page.htm l

Вы можете установить свой домен cookie как

www.somesite.com <— это специально установит его для www поддомена

.somesite.com <— это позволит установить его для любого поддомена somesite.com

Комментарии:

1. мне нужно установить домен, отличный от сайта, на котором я нахожусь, например: установить его на www.blah.com но домен должен быть www.yeh.com

2. @sluap: Вы не можете этого сделать. Политика Google в отношении того же источника, или вот так: crypto.stanford.edu/cs142/lectures/10-cookie-security.pdf