รหัสสถานะ JSP HTTP
ร้องขอ HTTP และการตอบสนองรูปแบบ http คล้ายกันมีโครงสร้างต่อไปนี้:
- ในบรรทัดสถานะ + CRLF (การขนส่งอาหารเส้นกลับ) เริ่มต้น
- ศูนย์หรือมากกว่าแถวหัวโมดูล + CRLF
- บรรทัดว่างเช่น CRLF
- ร่างกายตัวเลือกข้อความเช่นไฟล์ข้อมูลแบบสอบถามออกแบบสอบถาม
ยกตัวอย่างเช่นหัวข้อการตอบสนองเซิร์ฟเวอร์มีลักษณะเช่นนี้
HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (Blank Line) <!doctype ...> <html> <head>...</head> <body> ... </body> </html>สถานะ: เส้นประกอบด้วยรุ่น HTTP, รหัสสถานะและรหัสสถานะที่สอดคล้องกับข้อความสั้น ๆ
ตารางต่อไปนี้แสดงรหัสสถานะ HTTP และข้อความที่เกี่ยวข้องอาจจะกลับมาจากเซิร์ฟเวอร์:
รหัสสถานะ | ข่าว | ลักษณะ |
---|---|---|
100 | ต่อ | เป็นเพียงส่วนหนึ่งของการร้องขอรับเซิร์ฟเวอร์ แต่ตราบใดที่ไม่ได้รับการปฏิเสธจากเซิร์ฟเวอร์ของลูกค้าจะขอความต่อเนื่องของการนี้ |
101 | การสลับโปรโตคอล | เซิร์ฟเวอร์สวิตช์โปรโตคอล |
200 | ตกลง | ขอใช้บริการได้รับการยืนยัน |
201 | สร้าง | ขอสมบูรณ์ทรัพยากรใหม่จะถูกสร้างขึ้น |
202 | ได้รับการยืนยัน | คำขอเป็นที่ยอมรับ แต่ไม่ได้ดำเนินการ |
203 | ข้อมูลที่ไม่ใช่เผด็จการ | |
204 | ไม่มีเนื้อหาที่ | |
205 | เนื้อหารีเซ็ต | |
206 | เนื้อหาบางส่วน | |
300 | หลายตัวเลือก | ตารางเชื่อมโยงหลายมิติผู้ใช้สามารถเลือกเชื่อมโยงหลายมิติและเยี่ยมชมการสนับสนุนสูงสุด 5 เชื่อมโยงหลายมิติ |
301 | ย้ายอย่างถาวร | หน้าที่ร้องขอได้ย้ายไปยัง URL ใหม่ภายใต้ |
302 | พบ | หน้าขอย้ายไปชั่วคราว URL ใหม่ภายใต้ |
303 | ดูข้อมูลอื่น ๆ | หน้าที่ร้องขอสามารถพบได้ใน URL ที่แตกต่างกัน |
304 | ไม่ได้แก้ไข | |
305 | ใช้ proxy | |
306 | ไม่ได้ใช้ | รหัสสถานะนี้จะไม่มีอีกต่อไปในการใช้งาน แต่รหัสสถานะสงวนไว้ |
307 | เปลี่ยนเส้นทางชั่วคราว | หน้าขอย้ายไปชั่วคราว URL ใหม่ภายใต้ |
400 | ร้องขอไม่ถูกต้อง | เซิร์ฟเวอร์ไม่รู้จักการร้องขอ |
401 | ไม่มีสิทธิ | หน้าที่ร้องขอต้องการชื่อและรหัสผ่าน |
402 | ต้องชำระเงิน | แต่น่าเสียดายที่คุณไม่สามารถใช้รหัสสถานะนี้ |
403 | พระราชวังต้องห้าม | ห้ามการเข้าถึงหน้าเว็บที่ร้องขอ |
404 | ไม่พบ | เซิร์ฟเวอร์ไม่สามารถพบหน้าการร้องขอ |
405 | วิธีการที่ไม่ได้รับอนุญาต | วิธีการที่ระบุไว้ในคำขอไม่ได้รับอนุญาต |
406 | ไม่เป็นที่ยอมรับ | เซิร์ฟเวอร์ของลูกค้าเท่านั้นที่สามารถสร้างการตอบสนองที่ยอมรับไม่ได้ |
407 | รับรองความถูกต้องต้องใช้พร็อกซี่ | ก่อนที่จะขอใช้บริการจะต้องได้รับการรับรองโดยพร็อกซีเซิร์ฟเวอร์ |
408 | Request Timeout | ที่ขอเวลาเกินกว่าเซิร์ฟเวอร์สามารถรอการเชื่อมต่อจะตัดการเชื่อมต่อ |
409 | ขัดกัน | มีความขัดแย้งมีการร้องขอ |
410 | ที่ไปแล้ว | หน้าที่ร้องขอไม่สามารถใช้ได้อีก |
411 | ความยาวที่จำเป็น | "ความยาวเนื้อหา" ไม่ได้ถูกกำหนดเซิร์ฟเวอร์ปฏิเสธการร้องขอ |
412 | เงื่อนไขล้มเหลว | สิ่งที่ต้องมีการร้องขอจากเซิร์ฟเวอร์ประเมินเป็นเท็จ |
413 | ขอ Entity มีขนาดใหญ่เกินไป | เนื่องจากคำขอนิติบุคคลที่มีขนาดใหญ่เกินไปเซิร์ฟเวอร์ปฏิเสธการร้องขอ |
414 | ขอ URL ยาวเกินไป | เซิร์ฟเวอร์ปฏิเสธที่จะยอมรับคำขอเนื่องจาก URL ยาวเกินไป ข้อมูลเพิ่มเติมปรากฏในจำนวนมากของคำสั่งที่ "โพสต์" ขอลงในคำขอ "รับ" ที่แนบมากับ |
415 | ไม่สนับสนุนประเภทสื่อ | เซิร์ฟเวอร์ปฏิเสธที่จะยอมรับการร้องขอเพราะประเภทของสื่อที่ไม่สนับสนุน |
417 | คาดว่าจะมีการล้มเหลว | |
500 | ข้อผิดพลาดภายในเซิร์ฟเวอร์ | การร้องขอไม่สมบูรณ์เซิร์ฟเวอร์ได้พบกับสภาพที่ไม่คาดคิด |
501 | ไม่ได้ดำเนินการ | คำขอไม่สมบูรณ์เซิร์ฟเวอร์ไม่ให้การทำงานที่จำเป็น |
502 | Bad เกตเวย์ | การร้องขอไม่สมบูรณ์เซิร์ฟเวอร์จากเซิร์ฟเวอร์ต้นน้ำที่ได้รับการตอบสนองที่ไม่ถูกต้อง |
503 | บริการไม่พร้อมใช้งาน | การร้องขอไม่สมบูรณ์เซิร์ฟเวอร์จะปิดให้บริการชั่วคราวหรือรีบูต |
504 | เกตเวย์หมดเวลา | เกตเวย์หมดเวลา |
505 | HTTP เวอร์ชันไม่สนับสนุน | เซิร์ฟเวอร์ไม่สนับสนุนรุ่นของ HTTP ที่ระบุ |
การตั้งค่า HTTP วิธีรหัสสถานะ
ตารางต่อไปนี้แสดงวิธีการเรียน HttpServletResponse ที่ใช้ในการตั้งค่ารหัสสถานะ:
SN | วิธีการและคำอธิบาย |
---|---|
1 | โมฆะสาธารณะ SetStatus (int statusCode) วิธีการนี้สามารถตั้งค่ารหัสสถานะใด ๆ ถ้าคำตอบของคุณมีรหัสสถานะและเอกสารพิเศษให้แน่ใจว่าจะใช้ PrintWriter อะไรกลับมาก่อนที่จะเรียกวิธีการ SetStatus |
2 | โมฆะสาธารณะ sendRedirect (String URL) วิธีการนี้จะก่อให้เกิดการตอบสนองที่ 302 ขณะที่การสร้างส่วนหัวที่อยู่ URL ที่บอกว่าเป็นเอกสารใหม่ |
3 | โมฆะสาธารณะ sendError (รหัส int, String ข้อความ) วิธีการนี้จะเป็นรหัสสถานะ (ปกติ 404) และข้อความสั้น ๆ แทรกโดยอัตโนมัติเอกสาร HTML และส่งกลับไปยังลูกค้า |
สถานะ HTTP ตัวอย่างเช่นโปรแกรมรหัส
ตัวอย่างต่อไปนี้จะส่ง 407 รหัสข้อผิดพลาดในการเบราว์เซอร์เบราว์เซอร์แล้วจะบอกคุณ "Need รับรองความถูกต้อง !!!"
<html> <head> <title>Setting HTTP Status Code</title> </head> <body> <% // 设置错误代码,并说明原因 response.sendError(407, "Need authentication!!!" ); %> </body> </html>
เข้าใช้งานมากกว่าหน้า JSP คุณจะได้รับผลลัพธ์ที่ต่อไปนี้:
นอกจากนี้คุณยังสามารถลองใช้รหัสสถานะที่แตกต่างกันคุณจะได้เห็นสิ่งที่ไม่คาดคิดผล