Я установил объект в одном домене и попытался прочитать его с субдомена, но я получаю null
при чтении имени файла cookie.
Функции:
function setCookie(name, value, days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toUTCString();
}
var theCookie = name + "=" + (JSON.stringify(value) || "") + expires + ";domain=." + location.host.replace('www.', '');
document.cookie = theCookie;
}
function getCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
}
return null;
}
function eraseCookie(name) {
document.cookie = name + '=; Max-Age=-99999999;';
}
data.d - это объект, который выглядит следующим образом:
EmailAddress: "test@gmail.com"
FirstName: "Barak"
LastName: "Trump"
gender: "120"
id: "1099"
Основной код, который использует указанные выше функции:
setCookie("ComplexObject", data.d, 1);
Но когда я пытаюсь прочитать cookie:
var justTry = getCookie("ComplexObject");
Я получаю NULL, как с основного сайта www.localhost:40000
, так и с books.localhost:40000
.
Где я ошибся?