Кросс-доменные файлы cookie с jQuery и jQuery Cookie
У меня есть веб-сайт, который открывает модал при посещении сайта. У человека есть несколько вариантов с модалом. Если они выбирают определенную опцию, создается сессионный cookie.
Вот код, который я использую, чтобы проверить наличие cookie и запустить функцию, основанную на этом:
$(function() {
if($.cookie('my-cookie') === undefined) {
$('#modal').foundation('reveal', 'open');
}
$( ".close-modal" ).click(function() {
$('#modal').foundation('reveal', 'close');
$.cookie('my-cookie', '1', {path:'/'});
});
});
У меня также есть другой домен, который я хотел бы проверить, существует ли этот файл cookie. Насколько я понимаю, нет возможности читать файлы cookie других доменов, даже если я владею этим доменом и контролирую его.
У меня такой вопрос: есть ли обходной путь или способ, который позволил бы мне проверить, существует ли cookie из другого домена? Помните, что я контролирую оба домена и могу загружать код в один или оба домена.
Также я использую размещенную CMS, поэтому я не могу использовать серверный код. Я использую jQuery Cookie на обоих доменах и использую jQuery 2.1.
1 ответ
Вы можете читать куки на поддомене того же домена, но никогда не на совершенно разных доменах. Это совершенно намеренно, и если бы можно было обойти это, это открыло бы шлюз вопросов конфиденциальности. Обычно вы можете обойти это, передав идентификатор сеанса или другой токен аутентификации через URL в другой домен, но если вы не можете использовать код на стороне сервера, который не будет безопасным.