ServletResponse設置響應消息
在服務器里寫代碼,獲取請求消息,然后寫代碼設置響應消息,設置了響應消息就不用管理了,服務器會自動解析響應消息的內容,展示給用戶。
HTTP協議
1.請求消息
數據格式:
1.請求行
2.請求頭
3.請求空行
4.請求體
2.響應消息
數據格式:
1.響應行
2.響應頭
3.響應空行
4.響應體
響應字符串的格式
響應行:HTTP/1.1 200 ok
組成:協議/版本 響應狀態碼 響應狀態碼描述(ok表示成功)
響應狀態碼:描述一個狀態的,服務器告訴客戶端瀏覽器本次請求和響應的一個狀態
1.狀態碼都是三位數字
2.分類:五類,每一類都有很多,但是代表的含義是相似的
①1xx:服務器接收客戶端消息,沒有接收完成,等待一段時間后發送1xx狀態碼,詢問客戶端還要不要發消息
②2xx:表示成功。代表:200
③3xx:重定向。代表:302(重定向),資源跳轉的方式。敲一次回車訪問兩次資源。304(訪問緩存)
圖片要發二進制,發送(通信)的時間比較長。提升請求響應的速度,減輕服務器的壓力
如果圖片更改了,a.png不在是以前的二進制數據的圖片了。會自動的刷新圖片,不再請求緩存。HTTP協議自動的機制
④4xx:客戶端錯誤,請求服務器沒有的資源
404:請求資源路徑寫錯了,沒有對應的資源,找對應資源的路徑重新訪問
405:請求的方式沒有對應的doXxx方法
⑤5xx:服務器端錯誤。代表:500 (服務器內部異常)Tomcat會把異常展示到頁面上
響應頭:設置內容怎么展示的
格式:頭名稱:值
常見的相應頭:
1.Content-Type: text/html;charset=UTF-8
Content-Type:服務器告訴客戶端,本次響應體數據格式,以及編碼格式。
text:表示文本內容
html:表示html格式
charset:編碼格式。瀏覽器會根據反饋的內容改變當前頁面的字符集
2.Content-Length:字節個數
3.Date:日期
Set-Cookie: JSESSIONID=960500F64B6A409A6F1FAADB88D7263B; Path=/day15; HttpOnly
Content-Type: text/html;charset=UTF-8
Content-Length: 99
Date: Wed, 04 Mar 2020 03:26:00 GMT
4.Content-disposition:服務器告訴客戶端瀏覽器,以什么格式打開響應體數據
值:
in-line:默認值在當前頁面內打開
attchment;filename=xxx:以附件的形式打開響應體。文件下載
空一行:響應行
響應體:傳輸的數據,頁面展示信息的內容