【干貨】具體例子講解HTTP Header

之前一篇文章片橡,大概介紹了HTTP Headers,接下來我們看看常見的header信息和它所代表的含義海蔽。

首先打開騰訊首頁钥组,控制臺Network输硝。

www.qq.com請求:

Genaral Headers:

  • Request URL:http://www.qq.com/
  • Request Method:GET
  • Status Code:200 OK
  • Remote Address:127.0.0.1:8888
  • Referrer Policy:unsafe-url

Request URL:請求的URL

URL(Uniform Resource Locator即統(tǒng)一資源定位符)今瀑,互聯(lián)網(wǎng)上得到的資源的位置和訪問方法的一種簡潔的表示程梦,是互聯(lián)網(wǎng)上標準資源的地址。

基本URL包含:模式(或稱協(xié)議)橘荠、服務(wù)器名稱(或IP地址)屿附、路徑和文件名,如“協(xié)議://授權(quán)/路徑?查詢”哥童。

Request Method:請求方法

常見的Request Method有:get挺份、post、head

get和post的區(qū)別:本質(zhì)上并無區(qū)別贮懈,只是http協(xié)議上對這兩個方法有些規(guī)定匀泊。比如:1、GET使用URL傳參朵你,而POST將數(shù)據(jù)放在BODY中各聘。2、GET的URL會有長度上的限制抡医,則POST的數(shù)據(jù)則可以非常大躲因。3、POST比GET安全,因為數(shù)據(jù)在地址欄上不可見大脉。

從其他角度來看:get是Safe搞监、Idempotent的,get更像是查詢語句镰矿,不會改變服務(wù)器任何狀態(tài)琐驴,所以他是Safe(安全)、Idempotent(冪等的)衡怀。Safe可理解為只讀棍矛,Idempotent可理解為多次訪問相等。而post不是Safe抛杨,也不是Idempotent的够委,post更像是insert語句,會改變服務(wù)器狀態(tài)怖现。

從緩沖角度來看:服務(wù)端程序在接收客戶端表單提交的數(shù)據(jù)時茁帽,需要先將數(shù)據(jù)存儲到一個內(nèi)存空間,然后做解析等后續(xù)工作屈嗤,這個內(nèi)存空間一般稱之為接收緩沖區(qū)潘拨。對于post數(shù)據(jù)因為有Content-Length標記,服務(wù)端可以按標記的長度創(chuàng)建一個等于或稍大于提交數(shù)據(jù)的緩沖區(qū)饶号。對于get铁追,因為事先不知道提交的數(shù)據(jù)有多少,需要估計緩沖區(qū)長度茫船,如果緩沖區(qū)很大而接收數(shù)據(jù)很小會造成內(nèi)存浪費琅束,而如果緩沖區(qū)小于接收數(shù)據(jù),就可能造成緩沖區(qū)溢出算谈。

Status Code:狀態(tài)碼

(消息)1**:這一類型的狀態(tài)碼涩禀,代表請求已被接受,需要繼續(xù)處理然眼。這類響應(yīng)是臨時響應(yīng)艾船,只包含狀態(tài)行和某些可選的響應(yīng)頭信息,并以空行結(jié)束高每。

(成功)2**:這一類型的狀態(tài)碼屿岂,代表請求已成功被服務(wù)器接收、理解鲸匿、并接受爷怀。

(重定向)3**: 這類狀態(tài)碼代表需要客戶端采取進一步的操作才能完成請求。

(請求錯誤)4**:這類的狀態(tài)碼代表了客戶端看起來可能發(fā)生了錯誤晒骇,妨礙了服務(wù)器的處理霉撵。

(服務(wù)器錯誤)5磺浙、6:這類狀態(tài)碼代表了服務(wù)器在處理請求的過程中有錯誤或者異常狀態(tài)發(fā)生,也有可能是服務(wù)器意識到以當(dāng)前的軟硬件資源無法完成對請求的處理徒坡。

Remote Address:遠程地址

一般是127.0.0.1:8888或者遠程服務(wù)器ip地址+端口號

Referrer Policy:來源管制

這個東西怎么理解呢撕氧?我研究了好一會才明白,我們知道鏈接都是跳來跳去的喇完。當(dāng)從一個鏈接跳到另一個鏈接伦泥,另一個鏈接的referer就記錄了是從哪個鏈接跳來的。Referrer Policy就是管理這個來源信息的機制锦溪。

no-referrer:整個 Referer 首部會被移除不脯。訪問來源信息不隨著請求一起發(fā)送。

no-referrer-when-downgrade (默認值):在同等安全級別的情況下刻诊,引用頁面的地址會被發(fā)送(HTTPS->HTTPS)防楷,但是在降級的情況下不會被發(fā)送 (HTTPS->HTTP)

origin:在任何情況下,僅發(fā)送文件的源作為引用地址则涯。例如 https://example.com/page.html 會將 https://example.com/ 作為引用地址复局。

unsafe-url:無論是同源請求還是非同源請求,都發(fā)送完整的 URL(移除參數(shù)信息之后)作為引用地址粟判。

ps:就著昨天亿昏,‘www.qq.com’還是‘unsafe-url’的,今天就變成了‘no-referrer-when-downgrade’档礁,難道我發(fā)現(xiàn)了什么不可告人的秘密角钩?

Request Headers:

Accept:客戶端可以處理的內(nèi)容類型,這種內(nèi)容類型用MIME類型來表示

text/plain:文本文件默認值呻澜。意思是 未知的文本文件 递礼,瀏覽器認為是可以直接展示的。

text/css:任何一個CSS文件想要在網(wǎng)頁上被解釋執(zhí)行就必須為text/css 文件易迹。

text/html:HTML5統(tǒng)一的html格式宰衙。

image/gif平道、image/jpeg睹欲、image/png、image/svg+xml:圖片格式一屋。

......

Accept-Encoding:客戶端發(fā)給服務(wù)器,聲明客戶端支持的編碼類型窘疮。默認是deflate,其余還有g(shù)zip冀墨、compress等闸衫。

gizp: GZIP常用于UNIX系統(tǒng)的文件壓縮。我們在Linux中經(jīng)常會用到后綴為.gz的文件诽嘉,它們就是GZIP格式的∥党觯現(xiàn)今已經(jīng)成為Internet 上使用非常普遍的一種數(shù)據(jù)壓縮格式弟翘,或者說一種文件格式。

comporess:compress是一個相當(dāng)古老的 unix 檔案壓縮指令骄酗,壓縮后的檔案會加上一個 .Z 延伸檔名以區(qū)別未壓縮的檔案稀余,壓縮后的檔案可以以 uncompress 解壓。由于gzip更理想趋翻,一般用gzip睛琳。

Accept-Language:聲明客戶端可以理解的自然語言,以及優(yōu)先選擇的區(qū)域方言踏烙。

师骗。

Cache-Control:用于指定所有緩存機制在整個請求/響應(yīng)鏈中必須服從的指令。

public:所有內(nèi)容都將被緩存(客戶端和代理服務(wù)器都可緩存)
private:內(nèi)容只緩存到私有緩存中(僅客戶端可以緩存讨惩,代理服務(wù)器不可緩存)
no-cache/no-store:瀏覽器需要重新發(fā)送請求辟癌。
max-age=xxx:緩存的內(nèi)容將在 xxx 秒后失效, 這個選項只在HTTP 1.1可用。

Cookie:客戶端cookie(不展開)

Host:客戶端地址(不展開)

Proxy-Connection:(代理鏈接荐捻、不展開)

Referer:來源愿待,能看到是從哪里鏈接過來的。

Upgrade-Insecure-Requests:(不展開)

User-Agent:可以看到客戶端系統(tǒng)版本靴患、瀏覽器版本

Response Headers:

  • Cache-Control:max-age=60
  • Content-Encoding:gzip
  • Content-Type:text/html; charset=GB2312
  • Date:Tue, 25 Jul 2017 02:01:24 GMT
  • Expires:Tue, 25 Jul 2017 02:02:24 GMT
  • Proxy-Connection:Keep-alive
  • Server:squid/3.5.20
  • Transfer-Encoding:chunked
  • Vary:Accept-Encoding
  • Vary:Accept-Encoding
  • Vary:Accept-Encoding
  • X-Cache:MISS from shenzhen.qq.com

Content-Type:返回格式仍侥、編碼

Date:請求時間

Expires:緩存失效日期

Server:服務(wù)器代理

Transfer-Encoding:分塊編碼

X-Cache: 表示你的 http request 是由 proxy server 回的

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市鸳君,隨后出現(xiàn)的幾起案子农渊,更是在濱河造成了極大的恐慌,老刑警劉巖或颊,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件砸紊,死亡現(xiàn)場離奇詭異,居然都是意外死亡囱挑,警方通過查閱死者的電腦和手機醉顽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來平挑,“玉大人游添,你說我怎么就攤上這事⊥ㄏǎ” “怎么了唆涝?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長唇辨。 經(jīng)常有香客問我廊酣,道長,這世上最難降的妖魔是什么赏枚? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任亡驰,我火速辦了婚禮晓猛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘凡辱。我一直安慰自己鞍帝,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布煞茫。 她就那樣靜靜地躺著帕涌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪续徽。 梳的紋絲不亂的頭發(fā)上蚓曼,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機與錄音钦扭,去河邊找鬼纫版。 笑死,一個胖子當(dāng)著我的面吹牛客情,可吹牛的內(nèi)容都是我干的其弊。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼膀斋,長吁一口氣:“原來是場噩夢啊……” “哼梭伐!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起仰担,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤糊识,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后摔蓝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體赂苗,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年贮尉,在試婚紗的時候發(fā)現(xiàn)自己被綠了拌滋。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡猜谚,死狀恐怖败砂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情龄毡,我是刑警寧澤吠卷,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布锡垄,位于F島的核電站沦零,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏货岭。R本人自食惡果不足惜路操,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一疾渴、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧屯仗,春花似錦搞坝、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至峰弹,卻和暖如春店量,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鞠呈。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工融师, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蚁吝。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓旱爆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親窘茁。 傳聞我的和親對象是個殘疾皇子怀伦,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)山林,斷路器空镜,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • 一、概念(載錄于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434閱讀 8,353評論 6 152
  • Http協(xié)議詳解 標簽(空格分隔): Linux 聲明:本片文章非原創(chuàng)捌朴,內(nèi)容來源于博客園作者MIN飛翔的HTTP協(xié)...
    Sivin閱讀 5,223評論 3 82
  • 引言:對于HTTP屬性的一些整理吴攒,數(shù)據(jù)請求和響應(yīng)就不再貼圖,隨意找個網(wǎng)站打開調(diào)試工具都可以看得到砂蔽。注:HTTP版本...
    可愛的木頭閱讀 3,028評論 0 1
  • 本文整理自MIN飛翔博客 [1] 1. 概念 協(xié)議是指計算機通信網(wǎng)絡(luò)中兩臺計算機之間進行通信所必須共同遵守的規(guī)定或...
    HoyaWhite閱讀 2,671評論 2 20