c# jquery asp.net session generic-handler

c# - Asignadores y sesión genéricos de ASP.NET



jquery session (4)

Tengo un problema con GenericHandler y anonymousIdentification.

Básicamente, si <anonymousIdentification enabled="true" /> está activado en la configuración web, cada vez que se envía al servidor una solicitud GET / POST de JQuery, dicha solicitud se ejecuta bajo un nuevo usuario y una nueva sesión de usuario.

¿Hay alguna manera de mitigar esto? Necesito acceder a las variables de sesión del usuario actual ... ¡Es realmente frustrante!


Implementar la interfaz System.Web.SessionState.IRequiresSessionState :

public class Handler : IHttpHandler, System.Web.SessionState.IRequiresSessionState { public void ProcessRequest(HttpContext context) { context.Session[""] = "overflowing"; context.Response.Redirect("~/AnotherPage.aspx"); } }



Puedes usar esto:

public class Handler : IHttpHandler, System.Web.SessionState.IReadOnlySessionState


Sugiero que en el navegador web habilite la pestaña de red en el modo de desarrollador. Luego verifique en el AJAX qué cookie se envía (si corresponde).

Si no ve ninguna cookie, significa que el navegador no obtuvo ninguna sesión, por lo tanto, debe asegurarse (como lo indica Josh) de heredar la interfaz correcta y acceder a la cookie. (No olvides usar System.Web.SessionState)

Para generar la cookie, acceda al ID de sesión del objeto de sesión:

string sesId = context.Session.SessionID;

Antes de escribir nada a la respuesta.