ISessionIDManager.SaveSessionID(HttpContext, String, Boolean, Boolean) Método

Definición

Guarda un identificador de sesión recién creado en la respuesta HTTP.

public:
 void SaveSessionID(System::Web::HttpContext ^ context, System::String ^ id, [Runtime::InteropServices::Out] bool % redirected, [Runtime::InteropServices::Out] bool % cookieAdded);
public void SaveSessionID(System.Web.HttpContext context, string id, out bool redirected, out bool cookieAdded);
abstract member SaveSessionID : System.Web.HttpContext * string * bool * bool -> unit
Public Sub SaveSessionID (context As HttpContext, id As String, ByRef redirected As Boolean, ByRef cookieAdded As Boolean)

Parámetros

context
HttpContext

Objeto actual HttpContext que hace referencia a objetos de servidor usados para procesar solicitudes HTTP (por ejemplo, las Request propiedades y Response ).

id
String

Identificador de sesión.

redirected
Boolean

Cuando este método devuelve , contiene un valor booleano que es true si la respuesta se redirige a la dirección URL actual con el identificador de sesión agregado a la dirección URL; en caso contrario, false.

cookieAdded
Boolean

Cuando este método devuelve, contiene un valor booleano que es true si se ha agregado una cookie a la respuesta HTTP; de lo contrario, falsees .

Ejemplos

En el ejemplo de código siguiente se muestra un método implementado SaveSessionID 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 void SaveSessionID(HttpContext context, string id, out bool redirected, out bool cookieAdded)
{
  redirected = false;
  cookieAdded = false;

  if (pConfig.Cookieless == HttpCookieMode.UseUri)
  {
    // Add the SessionID to the URI. Set the redirected variable as appropriate.

    redirected = true;
    return;
  }
  else
  {
    context.Response.Cookies.Add(new HttpCookie(pConfig.CookieName, id));
    cookieAdded = true;
  }
}
Public Sub SaveSessionID(context As HttpContext, _
                         id As String, _
                         ByRef redirected As Boolean, _
                         ByRef cookieAdded As Boolean) _
  Implements ISessionIDManager.SaveSessionID

  redirected = False
  cookieAdded = False

  If pConfig.Cookieless = HttpCookieMode.UseUri Then

    ' Add the SessionID to the URI. Set the redirected variable as appropriate.

    redirected = True
    Return
  Else
    context.Response.Cookies.Add(New HttpCookie(pConfig.CookieName, id))
    cookieAdded = True
  End If
End Sub

Comentarios

El SaveSessionID objeto llama al SessionStateModule método durante el HttpApplication.AcquireRequestState evento. El SaveSessionID método almacena el identificador de sesión en la dirección URL (cuando se usa el estado de sesión sin cookies) o en una cookie de sesión sin expiración.

Si es posible que el valor devuelto de la CreateSessionID implementación contenga caracteres que no son válidos en una respuesta o solicitud HTTP, debe usar el UrlEncode método para codificar el valor de identificador de sesión en SaveSessionID la implementación del método y el método para descodificar el UrlDecode valor de identificador de sesión en la GetSessionID implementación del método.

Se aplica a

Consulte también