Pengepala HTTP biasa
Pengepala HTTP ialah pasangan kunci-nilai yang dihantar di awal setiap permintaan dan respons. Ia membawa metadata seperti jenis kandungan, peraturan cache dan pengesahan. Gunakan helaian ini untuk mengenali pengepala paling biasa apabila membina atau menyahpepijat trafik web.
| Pengepala | Arah | Kegunaan |
|---|---|---|
| Host | request | Identifies the server's host and port (from the URL). |
| User-Agent | request | Reports the client software (browser, OS, bot) making the request. |
| Accept | request | Lists the response media types (MIME) the client can handle. |
| Authorization | request | Carries credentials (token, Basic auth) to authenticate the client. |
| Content-Type | request/response | States the media type of the request or response body. |
| Content-Length | request/response | Gives the size in bytes of the request or response body. |
| Cookie | request | Sends stored key/value pairs from a previous response back to the server. |
| Set-Cookie | response | Server instructs the client to store a cookie for later requests. |
| Cache-Control | request/response | Directs caching behaviour: no-cache, max-age, private, etc. |
| ETag | response | Opaque identifier for a resource version, used for revalidation. |
| If-None-Match | request | Sends an ETag; server returns 304 if the resource is unchanged. |
| Location | response | Points the client to a new URL for redirects (3xx) or created resources. |
| Access-Control-Allow-Origin | response | Permits a browser to share a response across origins (CORS). |
| X-Forwarded-For | request | Records the client IP as seen through a proxy or load balancer. |
| Referer | request | Indicates the URL of the page that linked to the requested resource. |
Nota
- Nama pengepala tidak peka huruf besar/kecil; mengikut konvensi ditulis Title-Case (cth. Content-Type).
- Pengepala permintaan menerangkan klien; pengepala respons menerangkan jawapan pelayan.
- Pelayar menetapkan banyak pengepala (seperti Host dan Referer) secara automatik — jangan dipalsukan.
Soalan lazim
- Apakah bezanya pengepala permintaan dan respons?
- Pengepala permintaan dihantar klien (pelayar atau app) ke pelayan; pengepala respons dipulangkan pelayan bersama jawapannya. Sesetengahnya seperti Content-Type muncul di kedua-dua belah.
- Adakah nama pengepala HTTP peka huruf besar/kecil?
- Tidak. Mengikut spesifikasi, nama pengepala tidak peka huruf, jadi Content-Type dan content-type adalah sama. Title-Case hanyalah konvensi.
- Untuk apa pengepala Host?
- Host memberitahu pelayan domain mana yang disasarkan permintaan. Ia wajib dalam HTTP/1.1 dan membolehkan satu pelayan menghos banyak laman mengikut nama.
- Bagaimanakah cache berfungsi dengan pengepala?
- Cache-Control menetapkan berapa lama respons boleh di-cache; ETag dan If-None-Match membenarkan klien bertanya 'berubah?' dan menerima 304 Not Modified yang ringan.