ISessionIDManager.GetSessionID(HttpContext) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá identifikátor relace z kontextu aktuálního požadavku HTTP.
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
Parametry
- context
- HttpContext
Aktuální HttpContext objekt, který odkazuje na serverové objekty používané ke zpracování požadavků HTTP (například vlastnosti Request a Response požadavky HTTP).
Návraty
Aktuální identifikátor relace odeslaný s požadavkem HTTP.
Příklady
Následující příklad kódu ukazuje částečně implementovanou GetSessionID metodu. Pokud váš vlastní správce ID relace podporuje identifikátory relací bez souborů cookie, budete muset implementovat řešení pro odesílání a načítání identifikátorů relací v adrese URL, jako je filtr 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
Poznámky
Metoda GetSessionID je volána SessionStateModule během HttpApplication.AcquireRequestState a HttpApplication.EndRequest události. Pokud nelze načíst platný identifikátor relace z požadavku HTTP, vraťte null.
SessionStateModule Pokud metoda přijme nullGetSessionID, zavolá metoduCreateSessionID, která získá nový identifikátor relace pro novou relaci.
Pokud je možné, že hodnota vrácená vaší CreateSessionID implementací obsahuje znaky, které nejsou platné v odpovědi nebo požadavku HTTP, měli byste použít UrlEncode metodu ke kódování hodnoty identifikátoru relace v SaveSessionID implementaci metody a metodu UrlDecode dekódování hodnoty identifikátoru relace v implementaci metody GetSessionID .