ISessionIDManager.GetSessionID(HttpContext) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'identificatore di sessione dal contesto della richiesta HTTP corrente.
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
Parametri
- context
- HttpContext
Oggetto HttpContext corrente che fa riferimento a oggetti server utilizzati per elaborare le richieste HTTP, ad esempio le proprietà Request e Response.
Restituisce
L'identificatore di sessione inviato con la richiesta HTTP.
Esempio
Nell'esempio di codice seguente viene illustrato un metodo parzialmente implementato GetSessionID . Se il gestore ID sessione personalizzato supporta gli identificatori di sessione senza cookie, sarà necessario implementare una soluzione per l'invio e il recupero di identificatori di sessione nell'URL, ad esempio 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
Commenti
Il GetSessionID metodo viene chiamato da SessionStateModule durante gli HttpApplication.AcquireRequestState eventi e HttpApplication.EndRequest . Se non è possibile recuperare un identificatore di sessione valido dalla richiesta HTTP, restituire null
. Se riceve SessionStateModulenull
dal GetSessionID metodo , chiamerà il CreateSessionID metodo per ottenere un nuovo identificatore di sessione per una nuova sessione.
Se è possibile che il valore restituito dall'implementazione CreateSessionID contenga caratteri non validi in una risposta o una richiesta HTTP, è necessario usare il UrlEncode metodo per codificare il valore dell'identificatore di sessione nell'implementazione SaveSessionID del metodo e il UrlDecode metodo per decodificare il valore dell'identificatore di sessione nell'implementazione del GetSessionID metodo.