2020-03-18

作業(yè):


(一)Response對象的概述

一、什么是Response我們開發(fā)的軟件是B/S結(jié)構(gòu)的軟件,是可以通過瀏覽器訪問服務(wù)器的軟件。

從瀏覽器輸入一個地址,訪問服務(wù)器的這個過程稱為請求。服務(wù)器接收到請求,需要進行處理,處理以后,還需要將處理結(jié)果發(fā)回瀏覽器端顯示,這個過程稱為響應(yīng)

(二)Response對象的API

一、Response關(guān)于響應(yīng)行的方法setStatus(int sc)設(shè)置響應(yīng)的狀態(tài)碼

200成功

302重定向

304查找本地緩存

404請求資源不存在

500服務(wù)器內(nèi)部錯誤

二、Response關(guān)于響應(yīng)頭的方法

setDateHeader(String name, long date)

setHeader(String name, String value)

setIntHeader(String name, int value)

set開頭的方法用于設(shè)置:針對一個key對應(yīng)一個value的情況舉例:原頭信息

Content-Type:text/html調(diào)用setHeader("Content-Type","text/html");最終結(jié)果:Content-Type:text/htmladdDateHeader(String name, long date)addHeader(String name, String value)addIntHeader(String name, int value)add

開頭的方法用于追加:針對一個key對應(yīng)多個value的情況舉例:原頭信息Content-Type:text/html調(diào)用addHeader("Content-Type","text/plain");最終結(jié)果:Content-Type:text/html,text/plain

三、Response關(guān)于響應(yīng)體的方法getOutputStream()將二進制字節(jié)發(fā)送到客戶端getWriter()將字符文本發(fā)送到客戶端用于向瀏覽器端輸出內(nèi)容

四、Response其他的

APIaddCookie(Cookie cookie)服務(wù)器向瀏覽器回寫Cookie的方法sendRedirect(String location)重定向的方法setContentType(String type)設(shè)置瀏覽器打開頁面時候采用的字符集setCharacterEncoding(String charset)設(shè)置響應(yīng)字符流的緩沖區(qū)的字符集

五、Response對象的API的代碼演示

(1)設(shè)置狀態(tài)碼

(2)完成重定向1)重定向:是302狀態(tài)碼和Location響應(yīng)頭結(jié)合使用的效果2)實際開發(fā)中可以使用response.sendRedirect("/web01/ResponseDemo2");替換重定向那兩句的寫法

(3)完成定時刷新效果

六、

頁面定時跳轉(zhuǎn)的擴展

(1)使用JS完成讀秒的效果

(2)在HTML中完成頁面跳轉(zhuǎn)使用JS完成讀秒效果

(三)Response對象響應(yīng)的中文亂碼處理

一、使用字節(jié)流響應(yīng)中文

1、編寫代碼

2、向頁面輸出中文是否會有亂碼?不一定!

3、原因:其實這個亂碼的產(chǎn)生,與中文轉(zhuǎn)成字節(jié)數(shù)組,以及瀏覽器的打開

方式(打開的時候采用的默認(rèn)字符集)有關(guān)

4、解決:將中文轉(zhuǎn)成字節(jié)數(shù)組的時候,和瀏覽器默認(rèn)打開的時候采用的字符集一致即可

二、使用字符流響應(yīng)中文

1、編寫代碼

2、向頁面輸出中文是否會有亂碼?一定亂碼

3、原因:字符流是有緩沖區(qū)的,Response獲得字符流,老外設(shè)計默認(rèn)的緩沖區(qū)編碼是ISO-8859-1,這個字符集不支持中文

4、解決:設(shè)置Response獲得字符流緩沖區(qū)的編碼,和設(shè)置瀏覽器默認(rèn)打開時采用的字符集一致即可

(四)Request對象的概述及API的介紹

一、Request

對象的概述什么是Request對象

我們開發(fā)的軟件都是B/S架構(gòu)的軟件,從瀏覽器向服務(wù)器提交一些數(shù)據(jù)時,將這些數(shù)據(jù)內(nèi)容進行封裝,封裝成一個請求對象,即Request對象

二、Request對象的API

1、獲得客戶端的信息

getMethod()獲得請求的方式getQueryString()

獲得查詢字符串的(即請求路徑后的提交參數(shù)字符串)

getRequestURI()獲得請求路徑的

URI()獲得請求路徑的URLgetRemoteAddr()獲得客戶端的IP地址

2、獲得請求頭的方法getHeader獲得一個Key對應(yīng)一個Value的請求頭getHeaders獲得一個Key對應(yīng)多個Va

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Response&Request (一)Response對象的概述 一、什么是Response 我們開發(fā)的軟件...
    小湯源O閱讀 132評論 0 0
  • Response&Request (一)Response對象的概述 一、什么是Response 我們開發(fā)的軟件...
    你養(yǎng)豬嗎閱讀 184評論 0 0
  • (一)Response對象的概述 一、什么是Response我們開發(fā)的軟件是B/S結(jié)構(gòu)的軟件,是可以通過瀏覽器訪問...
    01_ff7c閱讀 233評論 0 0
  • 一、什么是Response 我們開發(fā)的軟件是B/S結(jié)構(gòu)的軟件,是可以通過瀏覽器訪問服務(wù)器的軟件。從瀏覽器輸入一...
    卡拉什尼科夫_8ca2閱讀 206評論 0 0
  • 在家宅了快兩個月了,來寫寫我去年平安夜吃的一家火鍋店吧。在吃重八之前,我對火鍋已經(jīng)沒有欲望了,感覺每家火鍋店都千篇...
    木梓楠閱讀 3,518評論 0 0

友情鏈接更多精彩內(nèi)容