偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

圖解HTTP學(xué)習(xí)筆記——簡(jiǎn)單的HTTP協(xié)議

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
最近在學(xué)習(xí)Web開(kāi)發(fā)的相關(guān)知識(shí),發(fā)現(xiàn)《圖解HTTP》這本書(shū)通俗易懂。所以花時(shí)間學(xué)習(xí)這本書(shū),并記錄下學(xué)習(xí)筆記。

前言

最近在學(xué)習(xí)Web開(kāi)發(fā)的相關(guān)知識(shí),發(fā)現(xiàn)《圖解HTTP》這本書(shū)通俗易懂。所以花時(shí)間學(xué)習(xí)這本書(shū),并記錄下學(xué)習(xí)筆記。

 [[151372]]

如上圖,我們每天都在瀏覽網(wǎng)頁(yè),一般我們都是在瀏覽器地址欄輸入要訪問(wèn)的網(wǎng)站的地址(如百度),按下回車,瀏覽器就顯示了我們要訪問(wèn)的網(wǎng)站的網(wǎng)頁(yè)。

那么在我們敲下回車鍵的那一刻,究竟發(fā)生了什么呢。通過(guò)今天的學(xué)習(xí),能大致了解其中原理,并簡(jiǎn)單學(xué)習(xí)HTTP協(xié)議。

目錄

1.客戶端與服務(wù)器端

2.HTTP是不保存狀態(tài)的協(xié)議

3.請(qǐng)求URI定位資源

4.告知服務(wù)器意圖的HTTP方法

5.使用方法下達(dá)命令

6.持久連接節(jié)省通信量

7.使用Cookie的狀態(tài)管理

正文

1.客戶端與服務(wù)器端

客戶端:請(qǐng)求訪問(wèn)資源(文本或圖像)的一端

服務(wù)器端:提供資源響應(yīng)的一端

HTTP協(xié)議規(guī)定:請(qǐng)求從客戶端發(fā)出,最后服務(wù)器端響應(yīng)該請(qǐng)求并返回。(肯定是從客戶端開(kāi)始建立通信的,服務(wù)器端在沒(méi)有接收到請(qǐng)求之前不會(huì)發(fā)送響應(yīng))

通俗地說(shuō),客戶端就好比男生,服務(wù)器端就好比女生,男生追求女生,女生才會(huì)有所反應(yīng)。當(dāng)然,如果是高富帥,則反之。也就是說(shuō),追求者只有主動(dòng)去追求被追求者,才有可能收獲美滿愛(ài)情。(個(gè)人理解==,歡迎討論)

下面通過(guò)一個(gè)訪問(wèn)百度的具體事例來(lái)學(xué)習(xí):

使用Chrome的控制臺(tái)工具,能很好的理解HTTP請(qǐng)求的過(guò)程,同時(shí)也是很好的Web開(kāi)發(fā)工具。(OSX:Command+Option+J Windows:F12)

 

如上圖所示:

在請(qǐng)求報(bào)文中:

方法(method):請(qǐng)求訪問(wèn)服務(wù)器的類型,如GET(更多方法參考下面的告知服務(wù)器意圖的HTTP方法)

請(qǐng)求URI(request-URI):請(qǐng)求訪問(wèn)的資源對(duì)象

HTTP的版本號(hào):如HTTP/1.1,用來(lái)提示客戶端使用的HTTP協(xié)議功能

請(qǐng)求報(bào)文由: 請(qǐng)求URI、協(xié)議版本、可選的請(qǐng)求首部字段 和 內(nèi)容實(shí)體構(gòu)成的。

響應(yīng)報(bào)文由: 協(xié)議版本、狀態(tài)碼(表示請(qǐng)求成功或失敗的數(shù)字代碼 如200)、用以解釋狀態(tài)碼的原因短語(yǔ)(如OK)、可選的響應(yīng)首部字段以及實(shí)體主體構(gòu)成。

2.HTTP是不保存狀態(tài)的協(xié)議

HTTP是一種不保存狀態(tài),即無(wú)狀態(tài)(stateless)協(xié)議。即在HTTP這個(gè)級(jí)別,協(xié)議對(duì)于發(fā)送過(guò)的請(qǐng)求或響應(yīng)都不做持久化處理)

為了更快地處理大量事務(wù),確保協(xié)議的可伸縮性===》(將HTTP協(xié)議設(shè)計(jì)成如此簡(jiǎn)單)=====》表現(xiàn):每當(dāng)有新的請(qǐng)求發(fā)送時(shí),就會(huì)有對(duì)應(yīng)的新響應(yīng)產(chǎn)生。(協(xié)議本身并不保留之前一切的請(qǐng)求或響應(yīng)報(bào)文的信息)

無(wú)狀態(tài)====》導(dǎo)致網(wǎng)站無(wú)法保存用戶的狀態(tài)====》引入Cookie技術(shù)

3.請(qǐng)求URI定位資源

HTTP協(xié)議使用URI定位互聯(lián)網(wǎng)上的資源

4.告知服務(wù)器意圖的HTTP方法

GET:獲取資源

POST:傳輸實(shí)體主體

PUT:傳輸文件(HTTP/1.1的該方法自身不帶驗(yàn)證機(jī)制,存在安全問(wèn)題,一般的Web網(wǎng)站不使用該方法)=====》(解決方法:1.配合Web應(yīng)用程序的驗(yàn)證機(jī)制2.架構(gòu)設(shè)計(jì)采用REST標(biāo)準(zhǔn))

HEAD:獲取報(bào)文首部(用于確認(rèn)URI的有效性及資源更新的日期時(shí)間)

DELETE:刪除文件(存在和PUT一樣的問(wèn)題)

OPTIONS:詢問(wèn)支持的方法

TRACE:追蹤路徑

CONNECT:要求用隧道協(xié)議連接代理(SSL:Secure Sockets Layer安全套接層,TLS:Transport Layer Security傳輸層安全)

5.使用方法下達(dá)命令

向請(qǐng)求URI指定的資源發(fā)送請(qǐng)求報(bào)文時(shí),采用稱為方法的命令。

6.持久連接節(jié)省通信量

HTTP協(xié)議的初始版本:每進(jìn)行一次HTTP通信就要斷開(kāi)一次TCP連接====》每次的請(qǐng)求都會(huì)造成無(wú)謂的TCP連接建立和斷開(kāi),增加通信量的開(kāi)銷====》解決:在HTTP/1.1和部分HTTP/1.0中:使用了持久連接(HTTP Persistent Connections,也稱為HTTP keep-alive或HTTP connection reuse)的方法(特點(diǎn):只要任意一端沒(méi)有明確提出斷開(kāi)連接,則保持TCP連接狀態(tài))

好處:減少了TCP連接的重復(fù)建立和斷開(kāi)所造成的額外開(kāi)銷,減輕服務(wù)器端的負(fù)載。

持久連接====》管線化(pipelining)技術(shù)====》不用等待響應(yīng)就能直接發(fā)送下一個(gè)請(qǐng)求===》同時(shí)并行發(fā)送多個(gè)請(qǐng)求

7.使用Cookie的狀態(tài)管理

HTTP是無(wú)狀態(tài)協(xié)議(它不對(duì)之前發(fā)生過(guò)的請(qǐng)求和響應(yīng)的狀態(tài)進(jìn)行管理,即無(wú)法根據(jù)之前的狀態(tài)進(jìn)行本次的請(qǐng)求處理)=====》對(duì)于要求登陸認(rèn)證的Web頁(yè)面無(wú)法進(jìn)行狀態(tài)的管理(不記錄已登錄的狀態(tài))=====》要求在每次請(qǐng)求報(bào)文中添加參數(shù)來(lái)管理登錄狀態(tài)

無(wú)狀態(tài)協(xié)議優(yōu)點(diǎn):1)不保存狀態(tài)===》減少服務(wù)器的CPU及內(nèi)存資源的消耗

2)HTTP協(xié)議的簡(jiǎn)單性=====》被應(yīng)用到各種場(chǎng)景里

Cookie技術(shù):通過(guò)在請(qǐng)求和響應(yīng)報(bào)文中寫(xiě)入Cookie信息來(lái)控制客戶端的狀態(tài)

實(shí)現(xiàn)原理:服務(wù)器端發(fā)送的響應(yīng)報(bào)文內(nèi)有一個(gè)叫做Set-Cookie的首部字段信息===》通知客戶端保存Cookie====》下次客戶端再往該服務(wù)器發(fā)送請(qǐng)求時(shí)=====》客戶端會(huì)自動(dòng)在請(qǐng)求報(bào)文中加入Cookie值后發(fā)送出去====》服務(wù)器端發(fā)現(xiàn)客戶端發(fā)送過(guò)來(lái)的Cookie===》服務(wù)器端會(huì)檢查是從哪一個(gè)客戶端發(fā)來(lái)連接請(qǐng)求=====》服務(wù)器端對(duì)比服務(wù)器上的記錄=====》最后得到之前的狀態(tài)信息。

責(zé)任編輯:何妍 來(lái)源: 博客園
相關(guān)推薦

2010-07-01 16:01:05

HTTP協(xié)議

2018-07-12 15:30:03

HTTP緩存機(jī)制

2014-10-22 09:36:41

TCPIP

2010-06-08 11:25:01

HTTP協(xié)議通用頭域

2020-09-12 13:55:03

HTTP3.0UDP協(xié)議

2017-05-26 10:35:13

前端HTTP

2018-10-09 09:28:12

HTTPHTTP協(xié)作服務(wù)器

2015-09-15 13:48:01

網(wǎng)絡(luò)協(xié)議HTTP Client

2021-08-03 10:10:16

HTTP連接管理

2020-09-28 06:48:15

HTTP協(xié)議版本

2021-08-03 09:33:55

HTTP網(wǎng)絡(luò)協(xié)議TCP

2018-04-17 16:29:24

Java面試HTTP

2020-06-17 21:39:11

HTTP協(xié)議服務(wù)器

2022-03-09 18:54:30

HTTP緩存協(xié)議cache

2010-06-08 12:31:15

HTTP協(xié)議實(shí)體

2019-05-14 10:50:11

HTTP協(xié)議HttpServlet

2010-06-08 10:56:56

HTTP協(xié)議功能

2024-11-15 11:11:48

2014-06-05 10:21:29

HTTP

2014-11-13 10:57:03

http協(xié)議
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)