ISessionIDManager.SaveSessionID(HttpContext, String, Boolean, Boolean) 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í.
Uloží nově vytvořený identifikátor relace do odpovědi 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)
Parametry
- context
- HttpContext
Aktuální HttpContext objekt, který odkazuje na objekty serveru používané ke zpracování požadavků HTTP (například Request vlastnosti a Response ).
- id
- String
Identifikátor relace.
- redirected
- Boolean
Když tato metoda vrátí, obsahuje logickou hodnotu, která je true
v případě, že je odpověď přesměrována na aktuální adresu URL s identifikátorem relace přidaným do adresy URL; v opačném případě . false
- cookieAdded
- Boolean
Když tato metoda vrátí, obsahuje logickou hodnotu, která je true
, pokud byl do odpovědi HTTP přidán soubor cookie; false
v opačném případě .
Příklady
Následující příklad kódu ukazuje částečně implementovanou SaveSessionID metodu. Pokud váš vlastní správce ID relací 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 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
Poznámky
Metoda SaveSessionID je volána objektem SessionStateModule během HttpApplication.AcquireRequestState události. Metoda SaveSessionID ukládá identifikátor relace buď do adresy URL (při použití stavu relace bez souborů cookie), nebo do souboru cookie relace, který nevypršel.
Pokud je možné, že hodnota vrácená z vaší CreateSessionID implementace obsahuje znaky, které nejsou platné v odpovědi nebo požadavku HTTP, měli byste použít metodu UrlEncode ke kódování hodnoty identifikátoru relace v implementaci SaveSessionID metody a metodu UrlDecode pro dekódování hodnoty identifikátoru relace v implementaci GetSessionID metody.
Platí pro
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro