javascript cookie-uri de curs de formare și starea de stocare
Așa cum am spus, de fiecare dată când încărcați pagina și pentru fiecare dintre script-urile sale de actualizare sunt executate din nou. Pe de o parte - acest lucru este bun, deoarece nu se poate face griji cu privire la starea anterioară a script-ul. Dar, pe de altă parte, - uneori trebuie să stocheze date cu privire la acțiunile anterioare sau date polzovatelm introduse.
Cookie - un bloc de text mic pe care le stochează browser-ul de pe disc atunci când încărcați prima pagină. În actualizările ulterioare pagina cookie va fi trimis automat la server, împreună cu GET- sau post-cerere.
Frecvent utilizate cookie pentru a stoca bucăți mici de date, cum ar fi identificatorii PHP sesiune, chei de sesiune temporare, parolele HASH, etc. Cantitatea maximă de date care pot fi stocate într-un singur modul cookie, este de 4 KB, iar volumul mediu de obicei nu depășește kilobyți cookie-urilor. Implică-te în depozit cu cookie-uri nu este necesară, deoarece acestea sunt trimise la server de fiecare dată când pagina este reîmprospătată. Deci, dacă pagina dvs. „cântărește“ 10 KB, iar în cookie-ați salvat toate cele 4 KB - traficul va crește cu aproape jumătate.
Orice cookie conține mai multe câmpuri cu nume fixe:
Data și ora când „termenul de valabilitate“ cookie-ul. O dată de data aceasta nu va mai fi trimis la server. Dacă acest parametru nu este specificat - un cookie este stocat până când închideți browserul. Opțiunea trebuie să fie întotdeauna date în formatul „Ziua, Număr de HH Den-AAAA: MM: SS GMT“, de exemplu:
Calea pe server, care va fi utilizat pentru cookie. Dacă doriți să setați cookie-ul pentru întregul server - a pus „/“
Setarea determină dacă sunt sau nu de a utiliza un cookie pentru a transmite o conexiune criptată (HTTPS). În cazul în care nu este instalat - cu ajutorul unui regulat se alăture.
În plus față de câmpurile fixe, vă puteți defini propria. Elementele sunt definite în formatul „NAME = valoare“, de exemplu:
Înainte de a solicita o pagină pe server, browser-ul verifică pentru a vedea dacă acesta cookie deja de la acest server (calea de câmp și de domeniu). Dacă există și „data de expirare“ ei nu a expirat (câmp expiră) - Punct trimite date către server. Neactualizat cookie browser-ul atunci când se solicită pagina ignoră pur și simplu.
Acum, uita-te la modul de a lucra cu cookie-uri.
Singura modalitate de a ajunge la cookie-urile documentului curent - utilizati document.cookies obiect built-in. De fapt, acesta este un șir de caractere care conține toate cookie, unul după altul, separate prin punct și virgulă:
Un cookie nou este adăugat la obiectul de atribuire obișnuit document.cookie valoare nouă:
Rețineți că, atunci când operațiunea inversă nu primiți ultimul un modul cookie, și toate cookie-urile, să-și însușească acest document:
Să considerăm un exemplu complex, vom crea un număr de funcții pentru manipularea cookie-uri.
Acum ia în considerare exemplul caracteristicile noastre:
După cum puteți vedea, de a folosi cookie-ul este destul de simplu. Index - pentru a forma o linie de parametrii respectivi.
În prezent, aproape toate browserele acceptă cookie-uri. Unii utilizatori (aproximativ 2-4%) forțat să dezactivați acest sprijin, cu toate că eu personal nimic periculos în cookie-uri nu văd. Maximă decât poate deteriora cookie-uri incluse - un atacator va fi capabil să știe numele de utilizator și parola pentru cutia poștală, și apoi - dacă sunteți prea neglijent și începe să deschidă plicului din interfața web orice cărți, glume, și alte tipuri de malware periculoase.
Identificat, inclusiv utilizator cookie sau nu puteți utiliza următoarele funcții:
Salvați paginile de stat, în unele cazuri, în mod semnificativ mai ușor de navigat site-ul și atrage vizitatori și potențialii clienți, iar acest lucru, la rândul său, contribuie la promovarea rapidă a unui site. Dar cel mai eficient mod - păstrarea simultană a statului de pe partea de client (prin intermediul, cookie-urile au), iar pe partea de server (de exemplu, prin intermediul sesiunilor).