Междоменный Ajax Calls и ведение сеанса в Google App Engine - PullRequest
3 голосов
/ 02 апреля 2011

Недавно я прошел через множество изломов, совершающих междоменные вызовы ajax в приложение GAE, и оно работает прекрасно, однако я пытаюсь установить идентификатор сеанса http при выполнении указанного вызова службы, и он работает нормально, за исключением того, что каждый раз, когда я выполняю запрос, сессия снова становится нулевой. Я предполагаю, что это потому, что вызов ajax, а не делает запрос через http? Как я могу пойти по этому поводу?

1 Ответ

3 голосов
/ 02 апреля 2011

Отслеживание сеансов обычно выполняется с помощью файлов cookie.Если вы используете общий доступ к ресурсам (http://www.w3.org/TR/access-control/),), файлы cookie не включаются в запрос по умолчанию. Чтобы отправить файлы cookie вместе с вашим запросом, добавьте в свой запрос XmlHttpRequest следующее:

var xhr = new XmlHttpRequest();
if ("withCredentials" in xhr) {
  xhr.withCredentials = "true";
}
...