ISessionIDManager.GetSessionID(HttpContext) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el identificador de sesión a partir del contexto de la solicitud HTTP actual.
public:
System::String ^ GetSessionID(System::Web::HttpContext ^ context);
public string GetSessionID (System.Web.HttpContext context);
abstract member GetSessionID : System.Web.HttpContext -> string
Public Function GetSessionID (context As HttpContext) As String
Parámetros
- context
- HttpContext
Objeto HttpContext actual que hace referencia a los objetos de servidor utilizados para procesar solicitudes HTTP (por ejemplo, las propiedades Request y Response).
Devoluciones
El identificador de la sesión actual enviado con la solicitud HTTP.
Ejemplos
En el ejemplo de código siguiente se muestra un método implementado GetSessionID parcialmente. Si el administrador de identificadores de sesión personalizado admite identificadores de sesión sin cookies, deberá implementar una solución para enviar y recuperar identificadores de sesión en la dirección URL, como un filtro ISAPI.
public string GetSessionID(HttpContext context)
{
string id = null;
if (pConfig.Cookieless == HttpCookieMode.UseUri)
{
// Retrieve the SessionID from the URI.
}
else
{
id = context.Request.Cookies[pConfig.CookieName].Value;
}
// Verify that the retrieved SessionID is valid. If not, return null.
if (!Validate(id))
id = null;
return id;
}
Public Function GetSessionID(context As HttpContext) As String _
Implements ISessionIDManager.GetSessionID
Dim id As String = Nothing
If pConfig.Cookieless = HttpCookieMode.UseUri Then
' Retrieve the SessionID from the URI.
Else
id = context.Request.Cookies(pConfig.CookieName).Value
End If
' Verify that the retrieved SessionID is valid. If not, return Nothing.
If Not Validate(id) Then _
id = Nothing
Return id
End Function
Comentarios
El GetSessionID método lo llama durante SessionStateModule los HttpApplication.AcquireRequestState eventos y HttpApplication.EndRequest . Si no puede recuperar un identificador de sesión válido de la solicitud HTTP, devuelva null
.
SessionStateModule Si recibe null
del GetSessionID método , llamará al CreateSessionID método para obtener un nuevo identificador de sesión para una nueva sesión.
Si es posible que el valor devuelto por la CreateSessionID implementación contenga caracteres que no son válidos en una respuesta o solicitud HTTP, debe usar el método para codificar el UrlEncode valor de identificador de sesión en SaveSessionID la implementación del método y el UrlDecode método para descodificar el valor de identificador de sesión en GetSessionID la implementación del método.