Latest web development tutorials

ตอบสนองของเซิร์ฟเวอร์ JSP

การตอบสนองต่อการตอบสนองเป็นหลักผลมาจากการโพสต์ JSP ภาชนะที่จะส่งกลับไปยังลูกค้า คุณสามารถตั้งค่าการตอบสนอง HTTP โดยตัวแปรรัฐและส่งข้อมูลเช่นคุกกี้ข้อมูลส่วนหัวของ HTTP ไปยังลูกค้า

การตอบสนองโดยทั่วไปมีลักษณะเช่นนี้

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

สถานะ: เส้นมีข้อมูลรุ่นของ HTTP ที่เช่น HTTP / 1.1, รหัสสถานะเช่น 200 มีข้อความสั้น ๆ ที่สอดคล้องกับรหัสสถานะเช่นตกลง

ตารางต่อไปนี้สรุปส่วนหัวของการตอบสนอง HTTP1.1 ส่วนที่มีประโยชน์มากที่สุดของเครือข่ายโปรแกรมที่คุณมักจะเห็นพวกเขา:

หัวข้อการตอบสนอง ลักษณะ
อนุญาต ระบุว่าเซิร์ฟเวอร์ที่สนับสนุนวิธีการร้องขอ (GET, POST ฯลฯ )
Cache-Control ระบุเอกสารการตอบสนองสามารถแคชสถานการณ์ความปลอดภัย ค่าปกติจะเป็นภาครัฐภาคเอกชนหรือไม่มีแคชและอื่น ๆ ประชาชนหมายความว่าเอกสารที่สามารถเก็บไว้ส่วนตัวหมายความว่าเอกสารที่เป็นเพียงผู้ใช้บริการเพียงครั้งเดียวและใช้เฉพาะแคชส่วนตัว ไม่มีแคชหมายความว่าเอกสารจะไม่ถูกเก็บไว้
สัมพันธ์ เบราว์เซอร์คำสั่งว่าจะใช้การเชื่อมต่อ HTTP ถาวร คำสั่งปิดค่าเบราว์เซอร์ไม่ได้ใช้การเชื่อมต่อ HTTP ถาวรและรักษาการหมายถึงการใช้การเชื่อมต่อแบบถาวร
Disposition เนื้อหา ให้เบราว์เซอร์ต้องใช้เพื่อตอบสนองต่อการให้ชื่อเก็บไว้บนดิสก์
เนื้อหาการเข้ารหัส หน้ากฎการส่งผ่านการเข้ารหัสที่ระบุ
เนื้อหาภาษา เอกสารคำอธิบายภาษาถูกนำมาใช้เช่นในตัว, en-US ,, RU ฯลฯ
ความยาวของเนื้อหา มันแสดงให้เห็นจำนวนไบต์ของการตอบสนอง เฉพาะในเบราว์เซอร์ของคุณเพื่อใช้ประโยชน์ถาวรถ้า (รักษาการ) การเชื่อมต่อ HTTP
ประเภทเนื้อหา ชนิดไมม์ของเอกสารที่แสดงให้เห็นว่าการใช้งานของ
วันที่หมดอายุ เมื่อมีการระบุที่หมดอายุและลบออกจากแคช
แก้ไขล่าสุด ที่ระบุไว้ในเอกสารที่แก้ไขล่าสุด ลูกค้าสามารถแคชเอกสารและให้ส่วนหัวคำขอ If-Modified-เนื่องจากในการร้องขอต่อมา
ที่ตั้ง ในเวลา 300 วินาทีรวมทั้งมีรหัสสถานะในการตอบสนองไปยังที่อยู่ของเบราว์เซอร์จะเชื่อมต่อโดยอัตโนมัติแล้วดึงเอกสารใหม่
รีเฟรช แสดงให้เห็นว่าบ่อยครั้งที่เบราว์เซอร์ขอปรับปรุงหน้าเว็บ
ลองใหม่อีกครั้งหลังจากการ และ 503 (บริการไม่พร้อมใช้งาน) ที่ใช้ร่วมกันเพื่อบอกผู้ใช้ว่าระยะเวลาที่ขอจะได้รับการตอบสนอง
คุกกี้ชุด คุกกี้สอดคล้องบ่งชี้หน้าปัจจุบัน

ระดับ HttpServletResponse

การตอบสนองวัตถุ javax.servlet.http.HttpServletResponse เป็นตัวอย่างของการเรียน เช่นเดียวกับเซิร์ฟเวอร์สร้างวัตถุร้องขอก็จะสร้างการตอบสนองลูกค้า

การตอบสนองวัตถุกำหนดกระบวนการในการสร้างข้อมูลส่วนหัว HTTP อินเตอร์เฟซ โดยใช้วัตถุนี้นักพัฒนาสามารถเพิ่มคุกกี้ใหม่หรือการประทับเวลาเช่นเดียวกับรหัสสถานะ HTTP และอื่น ๆ

ตารางต่อไปนี้ใช้ในการตั้งหัววิธีการตอบสนองของ HTTP ที่ระบุไว้ตามชั้น HttpServletResponse นี้:

SN วิธีการและคำอธิบาย
1 สตริง encodeRedirectURL (String URL)

ใน sendRedirect () วิธี URL ที่ใช้ในการเข้ารหัส
2 สตริง encodeURL (String URL)

การเข้ารหัส URL URL ที่ผลตอบแทนที่มีรหัสเซสชัน
3 containsHeader บูลีน (ชื่อ String)

ผลตอบแทนที่ส่วนหัวของการตอบสนองที่ระบุว่าถ้ามี
4 บูลีน isCommitted ()

ผลตอบแทนที่ได้ไม่ว่าจะเป็นคำตอบที่ถูกส่งไปยังลูกค้า
5 เป็นโมฆะ addCookie (คุกกี้ Cookie)

เพิ่มคุกกี้ที่ระบุในการตอบสนอง
6 เป็นโมฆะ addDateHeader (ชื่อ String, วันยาว )

เพิ่มส่วนหัวของการตอบสนองและวันที่ที่ระบุชื่อ
7 เป็นโมฆะ AddHeader (ชื่อสตริงมูลค่า String )

เพิ่มส่วนหัวของการตอบสนองและค่านิยมชื่อที่ระบุ
8 เป็นโมฆะ addIntHeader (ชื่อสตริงมูลค่า int )

เพิ่มส่วนหัวของการตอบสนองและความคุ้มค่า int กับชื่อที่ระบุ
9 ถือเป็นโมฆะ flushBuffer ()

เนื้อหาใด ๆ ของแคชที่เขียนให้กับลูกค้า
10 เป็นโมฆะรีเซ็ต ()

ล้างแคชข้อมูลใด ๆ ใด ๆ รวมทั้งรหัสสถานะและส่วนหัวการตอบสนองต่างๆ
11 ถือเป็นโมฆะ resetBuffer ()

ล้างแคชข้อมูลพื้นฐานไม่รวมถึงส่วนหัวของการตอบสนองและรหัสสถานะ
12 ถือเป็นโมฆะ sendError (int SC)

โดยใช้รหัสสถานะที่ระบุไว้ส่งให้กับลูกค้าการตอบสนองข้อผิดพลาดและจากนั้นล้างแคช
13 เป็นโมฆะ sendError (int SC, String MSG )

โดยใช้รหัสสถานะที่ระบุไว้และข้อผิดพลาดจะถูกส่งไปในการตอบสนองให้กับลูกค้า
14 ถือเป็นโมฆะ sendRedirect (ที่ตั้งของ String)

โดยใช้ URL ที่ระบุที่ส่งไปยังลูกค้ามีการตอบสนองทางอ้อมชั่วคราว
15 เป็นโมฆะ setBufferSize (ขนาด int)

กำหนดขนาดบัฟเฟอร์ของร่างกายตอบสนอง
16 เป็นโมฆะ setCharacterEncoding (String charset)

ระบุการตั้งค่ารหัสการตอบสนอง (MIME ชุดตัวอักษร) เช่น UTF-8
17 เป็นโมฆะ setContentLength (int len)

ระบุ Servlets HTTP ในการตอบสนองต่อความยาวของเนื้อหาวิธีการที่ใช้ในการตั้งหัว HTTP ความยาวเนื้อหา
18 เป็นโมฆะ setContentType (ชนิด String)

การตั้งค่าชนิดเนื้อหาของการตอบสนองถ้าการตอบสนองยังไม่ได้แสดงความคิดเห็นแล้ว
19 เป็นโมฆะ setDateHeader (ชื่อ String, วันยาว )

มีชื่อที่ระบุและการตั้งค่าของชื่อส่วนหัวของการตอบสนองและเนื้อหา
20 เป็นโมฆะ setHeader (ชื่อสตริงมูลค่า String )

มีชื่อที่ระบุและการตั้งค่าของชื่อส่วนหัวของการตอบสนองและเนื้อหา
21 เป็นโมฆะ setIntHeader (ชื่อสตริงมูลค่า int )

มีชื่อที่ระบุและการตั้งค่าของชื่อส่วนหัวของการตอบสนองและเนื้อหา
22 เป็นโมฆะ setlocale (Loc Locale)

การตอบสนองต่อการตั้งค่าภาษาถ้าการตอบสนองยังไม่ได้แสดงความคิดเห็นแล้ว
23 เป็นโมฆะ SetStatus (int SC)

ตั้งค่ารหัสสถานะการตอบสนอง

ส่วนหัวของการตอบสนอง HTTP ตัวอย่างโปรแกรม

ตัวอย่างต่อไปนี้ใช้ setIntHeader () วิธีการและ setRefreshHeader () วิธีการจำลองนาฬิกาดิจิตอล:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</title>
</head>
<body>
<h2>自动刷新实例</h2>
<%
   // 设置每隔5秒自动刷新
   response.setIntHeader("Refresh", 5);
   // 获取当前时间
   Calendar calendar = new GregorianCalendar();
   String am_pm;
   int hour = calendar.get(Calendar.HOUR);
   int minute = calendar.get(Calendar.MINUTE);
   int second = calendar.get(Calendar.SECOND);
   if(calendar.get(Calendar.AM_PM) == 0)
      am_pm = "AM";
   else
      am_pm = "PM";
   String CT = hour+":"+ minute +":"+ second +" "+ am_pm;
   out.println("当前时间: " + CT + "\n");
%>
</body>
</html>

บันทึก main.jsp รหัสข้างต้นแล้วเข้าถึงได้ผ่านเบราว์เซอร์ มันจะแสดงทุกห้าวินาทีในเวลาปัจจุบัน

เราสามารถมองไปที่ Gif ชาร์ตนำเสนอต่อไปนี้:

นอกจากนี้คุณยังสามารถปรับเปลี่ยนโค้ดข้างต้นมันเองพยายามที่จะใช้วิธีการอื่น ๆ เราจะสามารถที่จะได้รับความเข้าใจที่ลึกซึ้ง