У нас есть веб-апплет, который загружается по URL-адресу https://secure-ausomxeja.crmondemand.com/OnDemand/ ... откуда мы выполняем вызов веб-службы в том же домене (https://secure-ausomxeja.crmondemand.com/Services/Integration) с помощью JQuery. Мы не можем понять тот факт, что JSessionId (httponly cookie) не передается в вызове веб-службы JQuery, даже если все происходит в том же домене. Интересно, что если URL-адрес веб-службы будет начинаться с https://secure-ausomxeja.crmondemand.com/OnDemand/ ... (хотя и неверно), браузер правильно передает cookie.
Вопрос в том, достаточно ли для отправки httponly cookie на сервер того же домена или даже требуется имя первого каталога (OnDemand в нашем случае)?
Ниже приведен фрагмент кода, который не передает файл cookie JSessionId.
$.ajax({
url:"https://secure-ausomxeja.crmondemand.com/Services/Integration",
type: "POST",
dataType: "xml",
data: ...,
beforeSend: function(xhr) { xhr.setRequestHeader("SOAPAction", "..."); },
complete: endSaveProduct,
contentType: "text/xml; charset=\"utf-8\""
});
Ниже приведен фрагмент кода, который передает cookie JSessionId (но не имеет смысла, поскольку в этом месте нет доступной веб-службы):
$.ajax({
url:"https://secure-ausomxeja.crmondemand.com/OnDemand/...",
type: "POST",
dataType: "xml",
data: ...,
beforeSend: function(xhr) { xhr.setRequestHeader("SOAPAction", "..."); },
complete: endSaveProduct,
contentType: "text/xml; charset=\"utf-8\""
});
Set-Cookie: JSESSIONID=123456...; Domain=secure-ausomxeja.crmondemand.com; HttpOnly; path=/OnDemand; secure
Теперь я могу сделать вывод, что вызвать эту веб-службу в этом методе невозможно :( - person ravikiran   schedule 26.03.2011