ISessionIDManager.SaveSessionID(HttpContext, String, Boolean, Boolean) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Enregistre sur la réponse HTTP un identificateur de session récemment créé.
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)
Paramètres
- context
- HttpContext
Objet HttpContext actuel faisant référence aux objets serveurs utilisés pour traiter les demandes HTTP (par exemple, les propriétés Request et Response).
- id
- String
Identificateur de session.
- redirected
- Boolean
Lorsque cette méthode est retournée, elle contient une valeur booléenne, qui est true
si la réponse est redirigée vers l'URL actuelle à laquelle est ajouté l'identificateur de session ; sinon, false
.
- cookieAdded
- Boolean
Lorsque cette méthode est retournée, elle contient une valeur booléenne, qui est true
si un cookie a été ajouté à la réponse HTTP ; sinon, false
.
Exemples
L’exemple de code suivant montre une méthode partiellement implémentée SaveSessionID . Si votre gestionnaire d’ID de session personnalisé prend en charge les identificateurs de session sans cookie, vous devez implémenter une solution pour l’envoi et la récupération des identificateurs de session dans l’URL, comme un filtre 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
Remarques
La SaveSessionID méthode est appelée par l’objet SessionStateModule pendant l’événement HttpApplication.AcquireRequestState . La SaveSessionID méthode stocke l’identificateur de session dans l’URL (lorsque l’état de session sans cookie est utilisé) ou dans un cookie de session qui n’expire pas.
S’il est possible que la valeur retournée par votre CreateSessionID implémentation contienne des caractères qui ne sont pas valides dans une réponse ou une requête HTTP, vous devez utiliser la UrlEncode méthode pour encoder la valeur d’identificateur de session dans votre SaveSessionID implémentation de méthode et la UrlDecode méthode pour décoder la valeur d’identificateur de session dans votre GetSessionID implémentation de méthode.