У меня есть страница в domain.com
, которая делает запрос ajax JSONP (с использованием функции jQuery .getJSON()
) URL-адресу в anotherdomain.com
. Я подумал (считал: предположил), что ресурс в anotherdomain.com
будет иметь серверный доступ к любым файлам cookie, установленным в этом домене, но это, похоже, не так?Доступ к файлам cookie через JSONP
Ajax-вызов выполняется специально для доступа к определенному файлу cookie, выполняет некоторые манипуляции с данными и возвращает богатый набор информации, определяемой значением cookie. У исходного домена нет прямого доступа к значению cookie, поэтому я подумал, что запрос ajax будет поддерживать состояние, в котором я нуждаюсь.
Какую важную часть информации о печенье я пропускаю? Я измучен, и я просто не вижу этого.
Спасибо.
UPDATE
Я нашел способ сделать это, но это выглядит как JSONP на мой взгляд, так что мне интересно, почему этот способ работает в то время как версия Ajax не делает. Запрос просто отключен от сеанса браузера, чтобы файлы cookie не были доступны?
<script type="application/x-javascript" src="<?php echo $service_url . '&callback=interests' ?>"></script>
<script type="text/javascript">
function interests(data) {
$(function() {
var c_behaviors = data.length;
var ids = [];
for(var i = 0; i < c_behaviors; i++) {
ids.push(data[i].behavior_id);
}
$('body').append('<p><label>Returned:</label> ' + ids.join(', ') + '</p>');
});
}
</script>
Я уверен, что вы, возможно, втрое проверили это, но насколько вы уверены, что cookie был установлен другим доменом? Более того, каково состояние установленного файла cookie, например, истечение срока, путь и т. Д. – 2010-11-22 20:41:52