Junior — Middle
Čo znamená JSESSIONID v súbore cookie a ako sa používa na identifikáciu relácie používateľa?
sobes.tech AI
Odpoveď od AI
JSESSIONID je identifikátor relácie, ktorý server Java EE (napríklad Tomcat) vytvára pre každého používateľa pri prvom prístupe k webovej aplikácii. Tento identifikátor sa ukladá do cookie s názvom JSESSIONID a odosiela sa klientovi.
Keď klient vykoná ďalšie požiadavky, prehliadač tento cookie automaticky odošle späť na server. Server na základe hodnoty JSESSIONID nájde príslušnú reláciu používateľa, kde je uložený stav (napríklad údaje o autorizácii, nákupný košík a pod.). Týmto spôsobom JSESSIONID umožňuje udržiavať stav medzi požiadavkami v protokole HTTP, ktorý je predvolene bezstavový.
Príklad:
// Získanie relácie v servlete
HttpSession session = request.getSession();
// session.getId() vráti hodnotu JSESSIONID
Ak sú cookies zakázané, identifikátor relácie je možné prenášať cez URL, ale je to menej bezpečné a pohodlné.