HTTP協(xié)議
客戶端請(qǐng)求,服務(wù)端響應(yīng)。瀏覽器與服務(wù)器不建立持久連接,響應(yīng)后連接失效。
HTTP請(qǐng)求方法
一、GET
GET方法用于獲取請(qǐng)求頁(yè)面的指定信息。
二、HEAD
除了服務(wù)器不能在響應(yīng)里返回消息主體外,其他都與GET方法相同,常用于測(cè)試鏈接有效性。
三、 POST
與GET類似,但是有請(qǐng)求內(nèi)容,比GET來(lái)說(shuō),相對(duì)安全。
四、PUT
在服務(wù)器建立文件,相對(duì)危險(xiǎn),一般關(guān)閉。
五、DELETE
刪除服務(wù)器資源,相對(duì)危險(xiǎn),一般關(guān)閉。
六、TRACE
較為少見??苫仫@服務(wù)器收到的請(qǐng)求。
七、CONNECT
為了用于能動(dòng)態(tài)切換到隧道的代理。
八、OPTIONS
返回可用的請(qǐng)求方法,了解服務(wù)器性能。
常見狀態(tài)碼
200:客戶端請(qǐng)求成功。
302:重定向。
404:請(qǐng)求資源不存在。
400:客戶端請(qǐng)求有語(yǔ)法錯(cuò)誤,不能被服務(wù)器解析。
401:請(qǐng)求未經(jīng)授權(quán)。
403:服務(wù)器收到請(qǐng)求,但是拒絕服務(wù)。
500:服務(wù)器內(nèi)部錯(cuò)誤,是最常見的狀態(tài)。
503:服務(wù)器當(dāng)前不能處理客戶端的請(qǐng)求,一段時(shí)間后可能恢復(fù)正常。
HTTP消息
一、請(qǐng)求頭
Host:主要用于被請(qǐng)求的Intenet主機(jī)和端口號(hào).
User-Agent:顯示客戶端的瀏覽器,系統(tǒng)信息。
Referer:包含一個(gè)URL,這個(gè)URL是用戶來(lái)的地方。
Cookie:非常重要,表示請(qǐng)求者的身份。
Range:可以請(qǐng)求實(shí)體的部分內(nèi)容,多線程下載會(huì)用到。
X-Forward-For:代表請(qǐng)求端的IP,可以有多個(gè),用逗號(hào)隔開。
Accept:指定客戶端接收哪些MIME類型的信息。
Accept-Charset:指定客戶端接收的字符,如果沒(méi)有設(shè)置,則可以接收任何字符。
二、響應(yīng)頭
Server:服務(wù)器所使用的Web服務(wù)器的名稱。建議在服務(wù)端修改此頭。
Set-Cookie:向客戶端設(shè)置Cookie。
Last-Modified:資源的最后修改時(shí)間。
Location:告訴瀏覽器去訪問(wèn)哪個(gè)頁(yè)面,通常配合302狀態(tài)碼使用。
Refresh:告訴瀏覽器定時(shí)刷新瀏覽器。