Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

HTTP Headers ในบริบท JSP อธิบายแบบเข้าใจง่าย


เมื่อเว็บเซิร์ฟเวอร์ตอบสนองคำขอ HTTP การตอบสนองทั่วไปประกอบด้วย Status Line, Response Headers บางส่วน บรรทัดว่าง และเอกสาร การตอบสนองทั่วไปมีลักษณะดังนี้ -

HTTP/1.1 200 OK
Content-Type: text/html
Header2: ...
...
HeaderN: ...
(Blank Line)
<!doctype ...> <html> <head>...</head> <body> ... </body> </html>

Status Line ประกอบด้วย HTTP Version (HTTP/1.1 ในตัวอย่าง), Status Code (200 ในตัวอย่าง), และข้อความสั้นๆ ที่สอดคล้องกับ Status Code (OK ในตัวอย่าง)

ต่อไปนี้เป็นสรุป HTTP 1.1 Response Headers ที่มีประโยชน์ที่สุดซึ่งกลับไปยังเบราว์เซอร์จากเว็บเซิร์ฟเวอร์ หัวข้อเหล่านี้ใช้บ่อยในการเขียนโปรแกรมเว็บ -

ลำดับ Header และคำอธิบาย
1 Allow
Header นี้ระบุ Request Methods (GET, POST ฯลฯ) ที่เซิร์ฟเวอร์รองรับ
2 Cache-Control
Header นี้ระบุสถานการณ์ที่เอกสารตอบสนองสามารถ Cache ได้อย่างปลอดภัย สามารถมีค่า public, private หรือ no-cache ฯลฯ Public หมายถึงเอกสาร Cache ได้ Private หมายถึงเอกสารสำหรับผู้ใช้คนเดียว และเก็บใน Private (Non-shared) Caches เท่านั้น no-cache หมายถึงเอกสารไม่ควร Cache เลย
3 Connection
Header นี้สั่งเบราว์เซอร์ว่าจะใช้ Persistent HTTP Connections หรือไม่ ค่า close สั่งเบราว์เซอร์ไม่ใช้ Persistent Connections และ keep-alive หมายถึงใช้ Persistent Connections
4 Content-Disposition
Header นี้ให้คุณขอให้เบราว์เซอร์ถามผู้ใช้บันทึกการตอบสนองลงดิสก์ในไฟล์ชื่อที่กำหนด
5 Content-Encoding
Header นี้ระบุวิธีที่หน้าถูก Encode ระหว่างการส่ง
6 Content-Language
Header นี้บ่งชี้ภาษาที่เอกสารเขียน เช่น en, en-us, ru ฯลฯ
7 Content-Length
Header นี้ระบุจำนวน Bytes ในการตอบสนอง ข้อมูลนี้จำเป็นก็ต่อเมื่อเบราว์เซอร์ใช้ Persistent (Keep-alive) HTTP Connection
8 Content-Type
Header นี้ให้ MIME (Multipurpose Internet Mail Extension) Type ของเอกสารตอบสนอง
9 Expires
Header นี้ระบุเวลาที่เนื้อหาควรถือว่าเก่าและไม่ควร Cache อีกต่อไป
10 Last-Modified
Header นี้ระบุเมื่อเอกสารถูกเปลี่ยนแปลงล่าสุด Client สามารถ Cache เอกสารและจัดหาวันांकโดย Request Header If-Modified-Since ในคำขอภายหลัง
11 Location
Header นี้ควรอยู่กับการตอบสนองทั้งหมดที่มี Status Code ใน 300s แจ้งเบราว์เซอร์ที่อยู่เอกสาร เบราว์เซอร์จะ Reconnect ไปที่นั่นอัตโนมัติและดึงเอกสารใหม่
12 Refresh
Header นี้ระบุว่าภายในนานแค่ไหนเบราว์เซอร์ควรขอหน้าอัปเดต คุณสามารถระบุเวลาในจำนวนวินาทีที่หน้าจะ Refresh
13 Retry-After
Header นี้ใช้ร่วมกับ Response 503 (Service Unavailable) เพื่อบอกไคลเอ็นต์ว่ากี่เวลาจะ Repeat Request ได้
14 Set-Cookie
Header นี้ระบุ Cookie ที่เกี่ยวข้องกับหน้า