6.1 Jenis tajuk
Pengepala permintaan http sebenarnya adalah maklumat perkhidmatan untuk klien http dan pelayan http. Tetapi ia sangat penting, dan jika anda tidak memahaminya sama sekali, ia selalunya akan menyebelahi anda. Jadi sekurang-kurangnya baca tentang mereka.
Semua tajuk http boleh dibahagikan kepada 4 kumpulan utama:
# | Jenis pengepala | Penerangan | Catatan |
---|---|---|---|
1 | Tajuk Umum | Tajuk umum | Digunakan dalam permintaan dan respons |
2 | Minta pengepala | Minta pengepala | Digunakan hanya dalam permintaan |
3 | tajuk respons | Tajuk respons | Hanya digunakan dalam respons |
4 | Pengepala Entiti | Pengepala entiti | Iringi setiap entiti mesej |
6.2 Ejen pengguna
Pengepala yang paling penting dan popular ialah User-Agent . Ini ialah rentetan khas yang menerangkan klien mana yang membuat permintaan kepada pelayan. Ini adalah nama pelanggan.
Selalunya pelayan akan menyesuaikan sedikit responsnya kepada peminta. Sebagai contoh, jika jelas daripada permintaan bahawa permintaan itu datang daripada penyemak imbas telefon mudah alih, maka ia boleh diberikan versi mudah alih halaman HTML.
Ia bukan sesuatu yang luar biasa untuk spambots, pengurus muat turun dan sesetengah penyemak imbas menghantar rentetan Ejen Pengguna palsu untuk berpura-pura menjadi pelanggan yang sah. Keadaan ini dikenali sebagai spoofing ejen pengguna atau spoofing ejen pengguna.
Sebagai contoh, Ejen Pengguna saya kelihatan seperti ini sekarang:
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
Ia mengandungi maklumat tentang penyemak imbas, sistem pengendalian dan enjin web penyemak imbas.
6.3 Jenis Kandungan
Pengepala kedua paling popular ialah Content-Type . Ia digunakan untuk menentukan jenis MIME sumber yang pelayan sedang berkhidmat.
Malah pada awal Internet, jenis kandungan media yang dihantar telah diseragamkan untuk kemudahan. Ia dipanggil Jenis Media Internet atau singkatannya MimeTypes . Mereka dibahagikan kepada 9 kategori:
- permohonan
- audio
- contoh
- gambar
- mesej
- model
- berbilang bahagian
- teks
- video
Contoh:
kategori | taip | Penerangan |
---|---|---|
audio | audio/mp4 | Fail audio dalam format mp4 |
audio/aac | Fail audio AAC | |
gambar | imej/gif | gambar gif |
imej/jpeg | gambar jpeg | |
imej/png | gambar png | |
teks | teks/css | fail CSS |
teks/html | fail HTML | |
video | video/mpeg | Fail video dalam format mpeg |
video/webm | Fail video dalam format webm | |
video/3gpp | Fail video dalam format 3gpp | |
permohonan | aplikasi/x-www-form-urlencoded | Data yang dikodkan |
permohonan/zip | Zip arkib | |
aplikasi/javascript | JavaScript | |
aplikasi/xml | XML |
Biasanya pelayan tahu apa data yang diberikannya. Tetapi jika anda menjana respons pelayan dengan kod anda sendiri, maka anda perlu menentukan jenis respons (Jenis Kandungan) pelayan anda.
6.4 Panjang Kandungan
Pengepala ini menentukan panjang respons pelayan . Jika dengan cara yang mudah, maka saiz fail yang diberikan. Anda tidak perlu menetapkan pilihan ini secara manual. Walaupun boleh berguna untuk melihat apa yang pelayan berikan, jika atas sebab tertentu jawapannya tidak datang semua.
6.5 Terima Pengekodan
Dengan pengepala ini, pelanggan boleh menunjukkan kepada pelayan bahawa ia menyokong pelbagai algoritma pemampatan kandungan . Oleh itu, pelayan boleh mengarkibkan kandungan dahulu, contohnya, dengan arkib zip, kemudian menghantarnya kepada klien, dan klien boleh memulihkan kandungan asal dengan betul.
Kelebihan mengarkib ialah lebih kecil fail, lebih cepat pemindahan. Keburukan mengarkib - beban tambahan pada klien dan pada pelayan. Pengarkiban masuk akal apabila memindahkan fail besar dan selalunya tidak masuk akal apabila memindahkan fail kecil.
Contoh tajuk sedemikian:
Accept-Encoding: deflate, gzip;q=1.0, *;q=0.5
Di mana deflate
dan gzip
adalah algoritma pemampatan data yang disokong, dan q
menandakan tahap pemampatan.