http協(xié)議,狀態(tài)碼择同,方法了解一下两入?

一、http

http協(xié)議

1. http協(xié)議特性

1.1 無狀態(tài)
http是不保存狀態(tài)的協(xié)議敲才,不保存之前的請(qǐng)求和響應(yīng)裹纳,這樣設(shè)計(jì)是為了確保協(xié)議的可伸縮性,可以快速處理大量事務(wù)
為了驗(yàn)證身份紧武,引入cookie
1.2 持久鏈接(http1.1版本默認(rèn))
在http的早起版本中剃氧,由于當(dāng)時(shí)網(wǎng)絡(luò)不這么發(fā)達(dá),網(wǎng)絡(luò)請(qǐng)求密度相對(duì)比較低阻星,所以當(dāng)時(shí)每做一次網(wǎng)絡(luò)請(qǐng)求時(shí)朋鞍,必須連接(三次握手)-請(qǐng)求與相應(yīng)-斷開連接(四次揮手),現(xiàn)在網(wǎng)絡(luò)請(qǐng)求密度非常大迫横,必須滿足一次連接多次請(qǐng)求番舆,所以在http1.1版本中默認(rèn)所有的連接都是持久連接。
1.3 管線化
管線化即并發(fā)矾踱,持久連接使并發(fā)成為可能恨狈。
1.4 內(nèi)容協(xié)商
通俗地來講就是不同情況不同對(duì)待,比如訪問同一個(gè)URI地址呛讲,瀏覽器語言默認(rèn)為中文時(shí)我們?cè)L問到的是中文頁面禾怠,默認(rèn)語言是英文時(shí)我們?cè)L問到英文頁面。
內(nèi)容協(xié)商會(huì)以語言贝搁、字符集吗氏、編碼方式等作為基準(zhǔn)判斷響應(yīng)的資源。

2. http方法

http首部

通用首部字段


image.png
1.1 Cache-Control 緩存管理

和緩存相關(guān)的指令雷逆,可以多個(gè)參數(shù)用’,’分隔:
Cache-Control:private, max-age=0, no-cache

1.1.1 public

響應(yīng)指令:Cache-Control:public弦讽。
服務(wù)器返回給某個(gè)客戶端的緩存,也可被其它任意客戶端利用膀哲,這個(gè)緩存是公共的往产。

1.1.2 private

響應(yīng)指令:Cache-Control:private。
服務(wù)器返回給某個(gè)客戶端的緩存某宪,即使其它客戶端需要這樣的數(shù)據(jù)仿村,這個(gè)緩存也不會(huì)給其它客戶端用,這個(gè)緩存是私有的兴喂。

1.1.3 no-cache

請(qǐng)求和響應(yīng)指令:Cache-Control:no-cache蔼囊。
客戶端請(qǐng)求:不管緩存是何種情況焚志,我必須從源服務(wù)器中獲取最新的資源,這樣是為了防止拿到過期的資源畏鼓。
服務(wù)端響應(yīng):此響應(yīng)緩存服務(wù)器可以把它保存下來酱酬,但是每次緩存服務(wù)器要將此響應(yīng)返回給客戶端之前都必須找源服務(wù)器確認(rèn)一下數(shù)據(jù)。

1.1.4 no-store

請(qǐng)求和響應(yīng)指令:Cache-Control:no-store滴肿。
對(duì)于客戶端和服務(wù)端而言岳悟,該指定規(guī)定緩存不能在任何位置存儲(chǔ)任何東西,我們可以將其看做是不緩存泼差。

1.1.5 max-age

請(qǐng)求和響應(yīng)指令:Cache-Control:max-age=60贵少。
客戶端請(qǐng)求:在第一次請(qǐng)求后的60秒內(nèi),再請(qǐng)求可以直接將緩存給我堆缘。等于0時(shí)滔灶,緩存服務(wù)器需要將請(qǐng)求轉(zhuǎn)發(fā)給源服務(wù)器。
max-age=0和no-cache的區(qū)別:no-cache強(qiáng)制直接向源服務(wù)器請(qǐng)求不經(jīng)過緩存服務(wù)器吼肥,而max-age=0需要經(jīng)過緩存服務(wù)器录平。
服務(wù)端響應(yīng):在第一次返回緩存之后的60秒內(nèi)如果緩存服務(wù)器需要返回此緩存時(shí),不需要向源服務(wù)器進(jìn)行確認(rèn)就可以直接發(fā)送缀皱。

1.1.6 min-fresh

請(qǐng)求指令:Cache-Control:min-fresh=60斗这。
在這60秒以內(nèi)過期的資源無法作為響應(yīng)進(jìn)行返回。

1.1.7 max-stale

請(qǐng)求指令:Cache-Control:max-stale=60啤斗。
客戶端在這60秒內(nèi)請(qǐng)求的緩存即使過期了也可照常接收表箭。

1.1.8 only-if-cached

請(qǐng)求指令:Cache-Control:only-if-cached。
客戶端請(qǐng)求緩存钮莲,有緩存則返回免钻,無緩存返回504狀態(tài)碼。

1.1.9 must-revalidate

響應(yīng)指令:Cache-Control:must-revalidate崔拥。
代理會(huì)向源服務(wù)器再次驗(yàn)證即將返回的響應(yīng)緩存是否仍然有效极舔。

1.2 connection

主要有兩個(gè)作用:控制代理不再轉(zhuǎn)發(fā)首部字段,持久鏈接管理
1.2.1 控制代理不再轉(zhuǎn)發(fā)首部字段


image.png

1.2.2 持久連接管理
我們知道在http1.1版本中所有連接默認(rèn)是持久連接链瓦,如果我們向手動(dòng)地?cái)嚅_連接可以這樣:Connection: close拆魏。
為了兼容其它版本的http,我們這樣設(shè)置:Connection: Keep-Alive

1.3 Date

表示創(chuàng)建報(bào)文的日期和時(shí)間

請(qǐng)求首部字段


image.png

響應(yīng)首部字段


image.png

參考:圖解http(03)-http首部

3.http方法

Http1.1中的請(qǐng)求方法有這些
3.1 GET
請(qǐng)求訪問已被URI識(shí)別的資源慈俯,請(qǐng)求不需要實(shí)體主體渤刃。

3.2 POST
傳輸實(shí)體主體。

3.3 PUT
傳輸文件肥卡,本身無驗(yàn)證機(jī)制溪掀,存在安全問題事镣。

3.4 DELETE
刪除文件步鉴,與PUT相反的方法揪胃,也無驗(yàn)證機(jī)制。

3.5 HEAD
HEAD方法和GET方法一樣用于獲取資源氛琢,只是HEAD方法的請(qǐng)求不返回報(bào)文的主體部分喊递。

3.6 OPTIONS
用來查詢針對(duì)請(qǐng)求URI指定的資源支持的方法(GET?POST?等)。

3.7 TRACE
讓web服務(wù)器端將之前的請(qǐng)求通信返回給客戶端的方法阳似,用于追蹤路徑骚勘,請(qǐng)求在各個(gè)代理服務(wù)器之間中轉(zhuǎn)最終到達(dá)目標(biāo)服務(wù)器,在中轉(zhuǎn)時(shí)請(qǐng)求可能會(huì)被篡改撮奏。

3.8 CONNECT
要求用隧道協(xié)議連接代理俏讹,主要使用SSL和TLS協(xié)議把通信內(nèi)容加密后經(jīng)網(wǎng)絡(luò)隧道傳輸。

4.http狀態(tài)碼

image.png

2XX·成功--------------------表示成功處理了請(qǐng)求的狀態(tài)碼

  • 200畜吊,客戶端請(qǐng)求在服務(wù)器端被正常處理了泽疆;
  • 201,請(qǐng)求成功并且服務(wù)器創(chuàng)建了新的資源
  • 201玲献,服務(wù)器已經(jīng)接收殉疼,但是尚未處理
  • 203,服務(wù)器已經(jīng)成功處理了請(qǐng)求捌年,但返回的信息可能來自另一個(gè)來源
  • 204瓢娜,請(qǐng)求處理成功了,但沒有資源可返回礼预;
  • 206眠砾,對(duì)資源的一部分進(jìn)行請(qǐng)求成功返回;

3XX·重定向

  • 301逆瑞,永久移動(dòng)
  • 302荠藤,臨時(shí)移動(dòng)
  • 304,服務(wù)器內(nèi)容沒有修改获高,返回此響應(yīng)時(shí)哈肖,不會(huì)返回網(wǎng)頁的內(nèi)容,瀏覽器使用緩存
  • 305念秧,使用代理
  • 307淤井,臨時(shí)性重定向

4XX·客戶端錯(cuò)誤/請(qǐng)求錯(cuò)誤

  • 400,請(qǐng)求報(bào)文中存在語法錯(cuò)誤摊趾;
  • 401币狠,用戶認(rèn)證失敗砾层;
  • 403漩绵,不允許訪問資源;
  • 404肛炮,找不到資源止吐。

5XX·服務(wù)器錯(cuò)誤

  • 500宝踪,服務(wù)器內(nèi)部錯(cuò)誤 服務(wù)器內(nèi)部處理異常;
  • 503碍扔,服務(wù)器不可用 服務(wù)器暫時(shí)處于超負(fù)荷或者正在進(jìn)行停機(jī)維護(hù)瘩燥,無法處理請(qǐng)求。
  • 504不同,網(wǎng)關(guān)超時(shí)
  • 505厉膀,http版本不支受支持 服務(wù)器不支持請(qǐng)求中所用的http協(xié)議版本

HTTP狀態(tài)碼詳解與選用

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市二拐,隨后出現(xiàn)的幾起案子服鹅,更是在濱河造成了極大的恐慌,老刑警劉巖百新,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件菱魔,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡吟孙,警方通過查閱死者的電腦和手機(jī)澜倦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杰妓,“玉大人藻治,你說我怎么就攤上這事∠锘樱” “怎么了桩卵?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長倍宾。 經(jīng)常有香客問我雏节,道長,這世上最難降的妖魔是什么高职? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任钩乍,我火速辦了婚禮,結(jié)果婚禮上怔锌,老公的妹妹穿的比我還像新娘寥粹。我一直安慰自己,他們只是感情好埃元,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布涝涤。 她就那樣靜靜地躺著,像睡著了一般岛杀。 火紅的嫁衣襯著肌膚如雪阔拳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天类嗤,我揣著相機(jī)與錄音糊肠,去河邊找鬼裳瘪。 笑死,一個(gè)胖子當(dāng)著我的面吹牛罪针,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播黄伊,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼泪酱,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了还最?” 一聲冷哼從身側(cè)響起墓阀,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎拓轻,沒想到半個(gè)月后斯撮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡扶叉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年勿锅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枣氧。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡溢十,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出达吞,到底是詐尸還是另有隱情张弛,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布酪劫,位于F島的核電站吞鸭,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏覆糟。R本人自食惡果不足惜刻剥,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望滩字。 院中可真熱鬧透敌,春花似錦、人聲如沸踢械。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽内列。三九已至撵术,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間话瞧,已是汗流浹背嫩与。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工寝姿, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人划滋。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓饵筑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親处坪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子根资,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

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