Ho un sito Web che utilizza JQuery AJAX. Con questo codice JQueryOttenere Sessioni senza cookie ASP.NET e JQuery AJAX per giocare insieme bene
$.post("/ajax/getsomedata.aspx", {'id': id },
function(data)
{
dosomething(data);
}
);
Quando eseguo questo con cookieless = "false", id presenta in Request.Form. Quando ho creato cookieless = "true", id non è più in Request.Form.
UPDATE, Quello che ho fatto
ho aggiunto una chiamata a Response.ApplyAppPathModifier() per conservare i dati ed evitare un reindirizzamento automatico. Sto escludendo ** Diago ((e cancellando il mio perché i suoi riferimenti danno un po 'di insicurezza a quello che sta succedendo. Mi piace l'idea del dominio separato, ma non posso farlo qui.
Ecco il codice aggiornato:
$.post("<%=Response.ApplyAppPathModifier("/ajax/getsomedata.aspx")%>",
{'id': id },
function(data)
{
dosomething(data);
}
);
Secondo MSDNResponse.ApplyAppPathModifier() aggiunge l'ID di sessione se si è in stato di sessione senza cookie, e restituisce l'URL inalterata se non siete.
Poiché non esiste un ID di sessione, ASP.NET crea una nuova sessione e esegue un reindirizzamento (eliminando in tal modo qualsiasi dati di forma).