ISessionIDManager.GetSessionID(HttpContext) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Haalt de sessie-id op uit de context van de huidige HTTP-aanvraag.
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
Parameters
- context
- HttpContext
Het huidige HttpContext object dat verwijst naar serverobjecten die worden gebruikt voor het verwerken van HTTP-aanvragen (bijvoorbeeld de Request en Response eigenschappen).
Retouren
De huidige sessie-id die is verzonden met de HTTP-aanvraag.
Voorbeelden
In het volgende codevoorbeeld ziet u een gedeeltelijk geïmplementeerde GetSessionID methode. Als uw aangepaste sessie-id-manager cookieloze sessie-id's ondersteunt, moet u een oplossing implementeren voor het verzenden en ophalen van sessie-id's in de URL, zoals een ISAPI-filter.
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
Opmerkingen
De GetSessionID methode wordt aangeroepen door de SessionStateModule tijdens de HttpApplication.AcquireRequestState en HttpApplication.EndRequest gebeurtenissen. Als u een geldige sessie-id niet kunt ophalen uit de HTTP-aanvraag, keert u terug null. Als de SessionStateModule ontvangst null van de GetSessionID methode wordt uitgevoerd, wordt de CreateSessionID methode aangeroepen om een nieuwe sessie-id voor een nieuwe sessie op te halen.
Als het mogelijk is dat de waarde die door uw CreateSessionID implementatie wordt geretourneerd tekens bevat die niet geldig zijn in een HTTP-antwoord of -aanvraag, moet u de methode gebruiken om de UrlEncode waarde van de sessie-id in uw SaveSessionID methode-implementatie te coderen en de UrlDecode methode om de waarde van de sessie-id in uw GetSessionID methode-implementatie te decoderen.