請求首部字段詳解-四大首部字段之一

我在分享一下,四大請求首部字段之一,我在以前的一篇文章--《常見Http首部字段》寫道了常見的首部字段,裏面包含4種常見的請求首部字段,可是我並無詳細的解釋這些字段,我們你們都是講究的人,既然寫了我們就寫的明明白白的,我在《通用首部字段詳解--四大首部字段之一》中詳解了通用首部字段,今天咱們就看看在四大首部字段中字段最多的請求首部字段(19個),css

請求首部字段,顧名思義就知道,使用在請求方,那隻能攜帶客戶端的信息,客戶端一些請求要求,客戶端要求響應的優先級之類的,接下來我們就看看這19字段的html

一、 Accpet 前端

Accept的意思-接受,哪聰明的小夥伴是否是就能夠猜到了呢,沒錯它就是來告知服務器客戶端能接受的「媒體類型」,「媒體類型」有是什呢,其實咱們能夠分紅,文本類型、圖片類型、視頻類型、還有二進制類型web

文本類型  text/html,   text/css ......服務器

圖片類型:image/png  image/jpg image/gif .....markdown

視頻類型:video/mpeg video/quitime .......app

應用程序的二進制 : application/zip applilcation/octet-stream........ide

主要的目的就是告訴服務器,客戶端可以接受的媒體類型,多個類型以逗號隔開,若是加權重的話以分號;隔開q=1,q的是指0-1最多三位小數的數字,默認是1post


二、Accept-Charset 測試

Accept-Charset 字面意思你們均可想而知,沒錯就是客戶端可接受的字符集,也能夠理解爲優先處理字符集,固然q能夠一塊兒使用。


三、 Accept-Language

字面意思你們均可想而知,沒錯就是客戶端可接受的天然語言,也能夠理解爲優先處理的語言,固然q能夠一塊兒使用。


四、 Accept-Encoding 

字面意思你們均可想而知,沒錯就是客戶端可接受的編碼格式,也能夠理解爲優先處理的編碼格式,固然q能夠一塊兒使用。

經常使用的 gzip comperss


5 、If-Match

這個字段比較有意思,它的值是一個"可以表示惟一資源的字符串「,是響應首部字段的ETag的值,做用是和響應端的ETag作比較,若是值一致,響應端就會返回200 和資源,若是不一致就會返回412,客戶端再次請求資源


六、If-None-Match 

這個和If-Match左右相反


七、If-Modified-since

這個字段也比較有意思,當請求首部攜帶這個字段請求資源的時候,服務器會用請求首部字值:’日期值‘和資源實體的Last-Modified對比,

若是同樣就返回304

不然返回200 和響應體


八、If-Unmodified-Match 

和If-Modified-since相反可是,若是同樣就返回412,客戶端再次請求

九、If-Ranges

這個字段也比較有意思,他通常結合Range請求首部字段使用,它的值也是一個"可以惟一表示資源的字符串「,服務器會和ETag的值作比較,

若是這一致返回206 和請求的返回值

若是不一致直接返回200和所有的響應資源


十、Range

這個字段用於範圍請求,若是服務器支持範圍請求,在請求首部能夠添加這個字段,值爲」batys:1000-10000「表示請求的範圍是100-10000區間,

服務器發現範圍請求沒有超過資源範圍,就會返回206 ok

若是請求的範圍超過資源的範圍就會返回200ok,

若是服務器不支持也會返回200ok


十一、Host

這個字段通常會出如今,同一個ip下多個虛擬機的請求,用於區分同於ip下不一樣虛擬機


十二、From

From:’郵箱地址‘,告知服務器若是有什麼問題能夠聯繫這個郵箱


1三、Authorization

用於服務器要求客戶端驗證時,請求時帶的字段(通常是DIGUST和BASIC驗證,能夠看《DIGEST認證》《BASIC認證》


1四、Proxy-Authorization

用服務器要求代理端web驗證時,請求時帶的字段

1五、User-Agent

客戶端的一些信息,有時候會帶用戶的郵箱


1六、Referer

用戶表示請求原始方的URI


1七、Expcet

詢問服務器能不能作某些事情,

若是服務器能夠作到返回100 contiune

不然 417 Expectation Failed


1八、TE

你們還記得Accept-Encoding首部字段嗎?TE和Accept-Encoding功能很像,用於可以處理的傳輸編碼格式,不過另外還有一個功能還能夠知道Trailer分塊格式

1九、Max-Forwrads 

這個字段也是很是有意思的,他用於最大逐跳,他的值是阿拉伯數字,主要用於測試中間服務器那個出問題了,好比如今有一個請求須要通過10箇中間服務器才能請求到真正的服務器,可是忽然中間有個服務器down,其實前端是不知道那個服務器down,就須要請求首部加入Max-Forwrads來測試那個服務器出現問題了。


相關文章
相關標籤/搜索