CodeGym /Java tanfolyam / /HTTP-fejlécek 2. rész

HTTP-fejlécek 2. rész

Szint , Lecke
Elérhető

7.1 Keep-Alive fejléc

És még néhány hasznos cím. A Keep-Alive fejléc azt mondja a szervernek, hogy tartsa nyitva a kapcsolatot: a szerver nem zárja le azonnal a kapcsolatot a válasz elküldése után. Ez azt eredményezi, hogy a következő kérés ugyanattól a klienstől a szerverhez gyorsabban teljesíthető.

Példa egy ilyen fejlécre:

Connection: Keep-Alive

De ha minden kliensnek állandó kapcsolatra van szüksége, akkor a problémák a szerveren kezdődnek. A szerver vagy elérhetetlen lesz, vagy magától elkezdi bezárni a kapcsolatokat.

7.2 Cache-Control fejléc

A Cache-Control fejléc használható a tartalom gyorsítótárazásának szabályozására. A megfelelően konfigurált gyorsítótárazás felgyorsítja a tartalommal való munkát, a rosszul konfigurált gyorsítótárazás pedig hirtelen problémákat okoz.

A gyorsítótárazás letiltásához meg kell írnia a következő fejlécet:

Cache-Control: no-cache, no-store, must-revalidate

Semmit sem szabad a gyorsítótárban tárolni – sem az ügyfelek kéréseiből, sem a szerver válaszaiból. A kérés mindig elküldésre kerül a szervernek, a válasz mindig teljesen letöltődik.

Engedélyezheti a gyorsítótárazás legprimitívebb és legmegbízhatóbb típusát is :

Cache-Control: no-cache

A másolat kiadása előtt a gyorsítótár lekérdezi az eredeti kiszolgálót, hogy ellenőrizze, hogy az erőforrás naprakész-e.

Megadhatja az erőforrás gyorsítótárának idejét másodpercben . A címsor így fog kinézni:

Cache-Control: max-age=31536000

Ez a fejléc határozza meg a tartalom maximális gyorsítótári idejét.

A gyorsítótárazásról itt olvashat bővebben .

7.3 Cookie-k

A szerver adatokat tárolhat a kliens oldalon . Az ilyen adatokat cookie-nak nevezik . Az ügyfél azonban tárolhatja a cookie-t is. Mindkét félnek nagyon segítőkészek.

Például felkeresi a webhelyet, és már jogosult rá. Ez azt jelenti, hogy amikor legutóbb bejelentkezett, a szerver elrendelte, hogy a böngésző tárolja az információkat egy adott felhasználó sikeres bejelentkezéséről.

Így néz ki a cookie egy kérésben:

Cookie: name=value;name2=value2;nameN=valueN00

A cookie-kat általában a böngésző tárolja, és egy adott domainhez vannak kötve . Amikor ismét meglátogatja ugyanazt a domaint, a rendszer automatikusan cookie-kat ad hozzá a http-kéréshez és a http-válaszhoz. A szerver/domain nem tud olyan sütiket fogadni, amelyeket egy másik szerver/domain tárol a böngészőben.

Minden sütinek 4 fő paramétere van:

  • Név;
  • jelentése;
  • érvényességi idő (mennyi ideig kell tárolni);
  • azt a domaint, amelyhez a cookie kötve van.

A cookie-k tárolása és továbbítása szöveges formában történik, így a név és az érték is karakterlánc. Ha a sütik lejárati ideje nincs megadva, akkor a böngésző bezárása után megsemmisülnek.

7.4 munkamenet

Miután a felhasználó bejelentkezett az oldalra, azt mondják, hogy munkamenet jött létre a webhely és a szerver között.

A szerver egy speciális objektumot hoz létre önmagában - HttpSession,ahol minden szükséges információt eltárol egy jogosult klienssel való együttműködéshez. Ennek az objektumnak az egyedi számát pedig a böngésző Cookie formájában tárolja.

A Java webszerverek általában egy nevet használnak JSESSIONIDa munkamenet-azonosító tárolására. Valahogy így néz ki:

Cookie: JSESSIONID =ABAD1D

A szerver oldalon beállíthatja a munkamenet élettartamát, valamint azt, hogy a böngésző bezárásakor automatikusan bezárul-e.

Hozzászólások
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION