Ukladanie stavu klientskej relácie v ASP.NET V našom úvode do modelu relácie vyššie vidíte, že stav relácie by mal byť uložený na dvoch miestach, a to na strane klienta a servera. Klient je zodpovedný iba za uloženie ID relácie príslušnej webovej stránky, zatiaľ čo ostatné informácie relácie sa ukladajú na strane servera. V ASP je SessionID klienta skutočne uložené ako cookie. Ak sa používateľ rozhodne zakázať cookies v nastaveniach prehliadača, nebude si môcť užívať pohodlie relácie a môže dokonca nepristupovať k niektorým webovým stránkam. Na vyriešenie vyššie uvedených problémov existujú v ASP.NET dva typy metód ukladania relácií informácií: cookies a bez cookies. V ASP.NET klient stále štandardne používa cookies na ukladanie informácií o relácii. Ak chceme na klientovi používať bezsúbory súborov na ukladanie informácií o relácii, nasleduje metóda: Nájdite koreňový adresár aktuálnej webovej aplikácie, otvorte súbor Web.Config a nájdite nasledujúci odsek: <session State mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1; Trusted_Connection=áno" cookieless="falošné" timeout="20"
/> cookieless="false" v tomto odseku sa mení na cookieless="true", takže informácie o relácii klienta už nie sú ukladané cookies, ale sú uložené cez URL. Zatvorenie aktuálneho IE, otvorenie nového IE a opätovný prístup k webovej aplikácii bude vyzerať takto: Medzi nimi je tučné písmo v http://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245)/default.aspx ID relácie klienta. Upozorňujeme, že tieto informácie sú automaticky pridané IIS a neovplyvňujú predchádzajúce bežné pripojenie.
|