常見(jiàn)http狀態(tài)碼有哪些 怎么自定義HTTP狀態(tài)響應(yīng)碼?
怎么自定義HTTP狀態(tài)響應(yīng)碼?1、HTTP響應(yīng)格式web服務(wù)器對(duì)客戶端的響應(yīng)一般包括:一個(gè)狀態(tài)行、一些響應(yīng)頭、一個(gè)空行和相應(yīng)的文檔。1. 狀態(tài)行:狀態(tài)行由HTTP版本、狀態(tài)代碼和與狀態(tài)代碼對(duì)應(yīng)的短消息
怎么自定義HTTP狀態(tài)響應(yīng)碼?
1、HTTP響應(yīng)格式
web服務(wù)器對(duì)客戶端的響應(yīng)一般包括:一個(gè)狀態(tài)行、一些響應(yīng)頭、一個(gè)空行和相應(yīng)的文檔。
1. 狀態(tài)行:
狀態(tài)行由HTTP版本、狀態(tài)代碼和與狀態(tài)代碼對(duì)應(yīng)的短消息組成,指示是否理解或滿足請(qǐng)求。HTTP版本由服務(wù)器決定。狀態(tài)碼通常由系統(tǒng)自動(dòng)設(shè)置為200。您還可以使用servlet來(lái)設(shè)置狀態(tài)代碼。消息高聳的習(xí)俗。
2. 響應(yīng)報(bào)告。
3,空行
4,文檔]2,如何設(shè)置狀態(tài)碼],在將任何文檔內(nèi)容發(fā)送到客戶端程序之前調(diào)用方法設(shè)置狀態(tài)碼。
使用httpservletresponse接口的setstatus、sedredirect或senderror方法設(shè)置狀態(tài)代碼。
狀態(tài)代碼由三位數(shù)字組成。第一個(gè)數(shù)字定義了響應(yīng)的類(lèi)別,而后兩個(gè)數(shù)字沒(méi)有具體的分類(lèi)。
httpservletresponse中定義的常量在servlet中用于引用狀態(tài)代碼。
1,設(shè)置任意狀態(tài)代碼:setStatus(int)
在使用PrintWriter實(shí)際返回內(nèi)容之前調(diào)用setStatus方法。
參數(shù)可以是httpservletresponse中定義的int類(lèi)型狀態(tài)碼或常量。
2. 設(shè)置302和404狀態(tài)代碼:sendredirect(stringurl)和senderror(intcode,stringmsg)方法。兩個(gè)都拋出IOException。
狀態(tài)代碼302命令瀏覽器連接到新的URL。sendredirect方法生成302響應(yīng)和位置頭,并給出一個(gè)新的URL。在將其放入位置標(biāo)頭之前,系統(tǒng)會(huì)自動(dòng)將相對(duì)URL轉(zhuǎn)換為絕對(duì)URL。
當(dāng)服務(wù)器找不到文檔時(shí),使用狀態(tài)代碼404。senderror方法發(fā)送狀態(tài)碼和短消息,消息自動(dòng)排列在HTML文檔中并發(fā)送給用戶。