Latest web development tutorials

รหัสสถานะ 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 คุณจะได้รับผลลัพธ์ที่ต่อไปนี้:

js_http_status_codes

นอกจากนี้คุณยังสามารถลองใช้รหัสสถานะที่แตกต่างกันคุณจะได้เห็นสิ่งที่ไม่คาดคิดผล