ISessionIDManager.GetSessionID(HttpContext) 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.
Obtient l’identificateur de session à partir du contexte de la requête HTTP actuelle.
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
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).
Retours
Identificateur de session actuel envoyé avec la requête HTTP.
Exemples
L’exemple de code suivant montre une méthode partiellement implémentée GetSessionID . 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 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
Remarques
La GetSessionID méthode est appelée par les SessionStateModule événements et HttpApplication.AcquireRequestState les HttpApplication.EndRequest événements. Si vous ne pouvez pas récupérer un identificateur de session valide à partir de la requête HTTP, retournez null. Si les SessionStateModule réceptions null de la GetSessionID méthode sont reçues, elle appelle la CreateSessionID méthode pour obtenir un nouvel identificateur de session pour une nouvelle session.
S’il est possible que la valeur retournée par 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 l’implémentation de votre GetSessionID méthode.