У меня есть веб-сайт, который использует JQuery AJAX. С этим кодом JQuery
$.post("/ajax/getsomedata.aspx", {'id': id },
function(data)
{
dosomething(data);
}
);
Когда я запускаю это с cookieless = "false" , id отображается в Request.Form . Когда я устанавливаю cookieless = "true" , id больше не в Request.Form .
ОБНОВЛЕНИЕ, Что я сделал
Я добавил вызов Response.ApplyAppPathModifier (), чтобы сохранить данные и избежать автоматического перенаправления. Я исключаю ** Diago ((и удаляю свои собственные, потому что его ссылки дают некоторое представление о том, что происходит. Мне нравится идея отдельной области, но я не могу сделать это здесь.
Вот обновленный код:
$.post("<%=Response.ApplyAppPathModifier("/ajax/getsomedata.aspx")%>",
{'id': id },
function(data)
{
dosomething(data);
}
);
Согласно MSDN Response.ApplyAppPathModifier () добавляет идентификатор сеанса, если вы находитесь в состоянии сеанса без файлов cookie, и возвращает неизмененный URL-адрес, если это не так.
Поскольку идентификатор сеанса отсутствует, ASP.NET создает новый сеанс и выполняет перенаправление (таким образом удаляя любые данные формы).