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 un identificateur de session nouvellement créé dans la réponse 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)
Paramètres
- context
- HttpContext
Objet actuel HttpContext qui fait référence aux objets serveur utilisés pour traiter les requêtes HTTP (par exemple, les propriétés et Request les Response propriétés).
- id
- String
Identificateur de session.
- redirected
- Boolean
Lorsque cette méthode est retournée, contient une valeur booléenne qui est true si la réponse est redirigée vers l’URL actuelle avec l’identificateur de session ajouté à l’URL ; sinon, false.
- cookieAdded
- Boolean
Lorsque cette méthode retourne, 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 d’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 non expiré.
S’il est possible que la valeur retournée à partir de votre CreateSessionID implémentation contient des caractères non 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.