7.1 Pengepala Keep-Alive
Dan beberapa lagi tajuk yang berguna. Pengepala Keep-Alive memberitahu pelayan untuk memastikan sambungan tetap terbuka: pelayan tidak akan menutup sambungan serta-merta selepas menghantar respons. Ini akan menyebabkan permintaan seterusnya daripada klien yang sama kepada pelayan diselesaikan dengan lebih cepat.
Contoh tajuk sedemikian:
Connection: Keep-Alive
Tetapi jika semua pelanggan memerlukan sambungan kekal, maka masalah akan bermula pada pelayan. Pelayan sama ada tidak tersedia atau mula menutup sambungan sendiri.
7.2 Pengepala Kawalan Cache
Pengepala Cache-Control boleh digunakan untuk mengawal caching kandungan. Caching yang dikonfigurasikan dengan betul mempercepatkan kerja dengan kandungan, caching yang dikonfigurasikan secara bengkok menimbulkan masalah secara tiba-tiba.
Untuk melumpuhkan caching, anda perlu menulis pengepala berikut:
Cache-Control: no-cache, no-store, must-revalidate
Tiada apa-apa yang harus disimpan dalam cache - bukan dari permintaan pelanggan, mahupun dari respons pelayan. Permintaan sentiasa dihantar ke pelayan, respons sentiasa dimuat turun sepenuhnya.
Anda juga boleh mendayakan jenis caching yang paling primitif dan boleh dipercayai :
Cache-Control: no-cache
Sebelum memberikan salinan, cache menanyakan pelayan asal untuk melihat sama ada sumber itu terkini.
Anda boleh menentukan masa cache sumber dalam beberapa saat . Tajuk akan kelihatan seperti ini:
Cache-Control: max-age=31536000
Pengepala ini menentukan masa cache maksimum untuk kandungan.
Anda boleh membaca lebih lanjut mengenai caching di sini.
7.3 Kuki
Pelayan boleh menyimpan data pada bahagian klien . Data sedemikian dipanggil kuki . Walau bagaimanapun, pelanggan juga boleh menyimpan kuki. Mereka sangat membantu kedua-dua pihak.
Sebagai contoh, anda pergi ke tapak tersebut, dan anda sudah diberi kuasa ke atasnya. Iaitu, apabila anda log masuk ke dalamnya kali terakhir, pelayan mengarahkan penyemak imbas untuk menyimpan maklumat tentang log masuk yang berjaya bagi pengguna tertentu.
Begini rupa Cookie dalam permintaan:
Cookie: name=value;name2=value2;nameN=valueN00
Kuki biasanya disimpan oleh penyemak imbas dan ia terikat pada domain tertentu . Apabila anda melawat domain yang sama sekali lagi, kuki ditambah secara automatik pada permintaan http dan respons http. Pelayan/domain tidak boleh menerima kuki yang disimpan dalam penyemak imbas oleh pelayan/domain lain.
Setiap kuki mempunyai 4 parameter utama:
- Nama;
- makna;
- tempoh sah (berapa lama untuk menyimpannya);
- domain yang terikat dengan kuki.
Kuki disimpan dan dihantar dalam bentuk teks, jadi kedua-dua nama dan nilai adalah rentetan. Jika masa tamat tempoh kuki tidak ditentukan, maka ia akan dimusnahkan selepas penyemak imbas ditutup.
7.4 sesi
Selepas pengguna telah log masuk ke tapak, mereka mengatakan bahawa satu sesi telah diwujudkan antara tapak dan pelayan.
Pelayan mencipta objek khas dengan sendirinya - HttpSession,
di mana ia menyimpan semua maklumat yang diperlukan untuk bekerja dengan pelanggan yang diberi kuasa. Dan nombor unik objek ini disimpan dalam penyemak imbas dalam bentuk Kuki.
Pelayan web Java biasanya menggunakan nama JSESSIONID
untuk menyimpan ID sesi. Ia kelihatan seperti ini:
Cookie: JSESSIONID =ABAD1D
Di bahagian pelayan, anda boleh menetapkan jangka hayat sesi, serta sama ada ia akan ditutup secara automatik apabila penyemak imbas ditutup.
GO TO FULL VERSION