日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

HTTP協(xié)議 超文本傳輸協(xié)議 由萬維網(wǎng)制定(w3c)

是瀏覽器與服務(wù)器通訊的應(yīng)用層協(xié)議,規(guī)定了瀏覽器與服務(wù)器之間的交互規(guī)則以及交互數(shù)據(jù)的格式信息等。

Http超文本傳輸協(xié)議

報文

HTTP協(xié)議對于客戶端與服務(wù)端之間的交互規(guī)則有以下定義:

要求瀏覽器與服務(wù)端之間必須遵循一問一答的規(guī)則,即:瀏覽器與服務(wù)端建立TCP連接后需要先發(fā)送一個請求(問)然后服務(wù)端接收到請求并予以處理后再發(fā)送響應(yīng)(答)。注意,服務(wù)端永遠不會主動給瀏覽器發(fā)送信息。

HTTP要求瀏覽器與服務(wù)端的傳輸層協(xié)議必須是可靠的傳輸,因此是使用TCP協(xié)議作為傳輸層協(xié)議的。

  • HTTP協(xié)議對于瀏覽器與服務(wù)端之間交互的數(shù)據(jù)格式,內(nèi)容也有一定的要求。
  • 瀏覽器給服務(wù)端發(fā)送的內(nèi)容稱為請求Request
  • 服務(wù)端給瀏覽器發(fā)送的內(nèi)容稱為響應(yīng)Response
Http超文本傳輸協(xié)議

http協(xié)議

請求和響應(yīng)中大部分內(nèi)容都是文本信息(字符串),并且這些文本數(shù)據(jù)使用的字符集為:ISO8859-1.這是一個歐洲的字符集,里面是不支持中文的!!!。而實際上請求和響應(yīng)出現(xiàn)的字符也就是英文,數(shù)字,符號。

請求Request

請求是瀏覽器發(fā)送給服務(wù)端的內(nèi)容,HTTP協(xié)議中一個請求由三部分構(gòu)成:

分別是:請求行,消息頭,消息正文。消息正文部分可以沒有。

Http超文本傳輸協(xié)議

請求部分

1:請求行

  • 請求行是一行字符串,以連續(xù)的兩個字符(回車符和換行符)作為結(jié)束這一行的標志。
  • 回車符:在ASC編碼中2進制內(nèi)容對應(yīng)的整數(shù)是13.回車符通常用cr表示。
  • 換行符:在ASC編碼中2進制內(nèi)容對應(yīng)的整數(shù)是10.換行符通常用lf表示。
  • 回車符和換行符實際上都是不可見字符。

請求行分為三部分:

  • 請求方式(SP)抽象路徑(SP)協(xié)議版本(CRLF) 注:SP是空格
  • GET /myweb/index.html HTTP/1.1
  • GET / HTTP/1.1

URL地址格式:

  • 協(xié)議://主機地址信息/抽象路徑
  • http://localhost:8088/TeduStore/index
  • GET /TeduStore/index.html HTTP/1.1

2:消息頭

消息頭是瀏覽器可以給服務(wù)端發(fā)送的一些附加信息,有的用來說明瀏覽器自身內(nèi)容,有的用來告知服務(wù)端交互細節(jié),有的告知服務(wù)端消息正文詳情等。

  1. 消息頭由若干行組成,每行結(jié)束也是以CRLF標志。
  2. 每個消息頭的格式為:消息頭的名字(:SP)消息的值(CRLF)
  3. 消息頭部分結(jié)束是以單獨的(CRLF)標志。
//例如:
Host: localhost:8088(CRLF)
Connection: keep-alive(CRLF)
Upgrade-Insecure-Requests: 1(CRLF)
User-Agent: Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36(CRLF)
Sec-Fetch-User: ?1(CRLF)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng;q=0.8,application/signed-exchange;v=b3;q=0.9(CRLF)

Sec-Fetch-Site: none(CRLF)
Sec-Fetch-Mode: navigate(CRLF)
Accept-Encoding: gzip, deflate, br(CRLF)
Accept-Language: zh-CN,zh;q=0.9(CRLF)(CRLF)

3:消息正文

消息正文是2進制數(shù)據(jù),通常是用戶上傳的信息,比如:在頁面輸入的注冊信息,上傳的附件等內(nèi)容。

GET /myweb/index.html HTTP/1.1
Host: localhost:8088
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng;q=0.8,application/signed-exchange;v=b3;q=0.9

Sec-Fetch-Site: none
Sec-Fetch-Mode: navigate
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
1010101101001.....

HTTP響應(yīng)Response

響應(yīng)是服務(wù)端發(fā)送給客戶端的內(nèi)容。一個響應(yīng)包含三部分:狀態(tài)行,響應(yīng)頭,響應(yīng)正文

1:狀態(tài)行

狀態(tài)行是一行字符串(CRLF結(jié)尾),并且狀態(tài)行由三部分組成,格式為:

protocol(SP)statusCode(SP)statusReason(CRLF)

協(xié)議版本(SP)狀態(tài)代碼(SP)狀態(tài)描述(CRLF)

狀態(tài)代碼是一個3位數(shù)字,分為5類:

  1. 1xx:保留
  2. 2xx:成功,表示處理成功,并正常響應(yīng)
  3. 3xx:重定向,表示處理成功,但是需要瀏覽器進一步請求
  4. 4xx:客戶端錯誤,表示客戶端請求錯誤導(dǎo)致服務(wù)端無法處理
  5. 5xx:服務(wù)端錯誤,表示服務(wù)端處理請求過程出現(xiàn)了錯誤

具體的數(shù)字在HTTP協(xié)議手冊中有相關(guān)的定義,可參閱。

Http超文本傳輸協(xié)議

常用狀態(tài)圖

響應(yīng)頭: 響應(yīng)頭與請求中的消息頭格式一致,表示的是服務(wù)端發(fā)送給客戶端的附加信息。

響應(yīng)正文: 2進制數(shù)據(jù)部分,包含的通常是客戶端實際請求的資源內(nèi)容。

響應(yīng)的大致內(nèi)容:
HTTP/1.1 200 OK(CRLF)
Content-Type: text/html(CRLF)
Content-Length: 2546(CRLF)(CRLF)
1011101010101010101......

兩個響應(yīng)頭:

Content-Type是用來告知瀏覽器響應(yīng)正文中的內(nèi)容是什么類型的數(shù)據(jù)(圖片,頁面等等)不同的類型對應(yīng)的值是不同的,比如:

常見的媒體格式類型如下:

  • text/html : HTML格式
  • text/plain :純文本格式
  • text/xml : XML格式
  • image/gif :gif圖片格式
  • image/jpeg :jpg圖片格式
  • image/png:png圖片格式

以application開頭的媒體格式類型:

  • application/xhtml+xml :XHTML格式
  • application/xml : XML數(shù)據(jù)格式
  • application/atom+xml :Atom XML聚合格式
  • application/json : JSON數(shù)據(jù)格式
  • application/pdf :pdf格式
  • application/msword : Word文檔格式
  • application/octet-stream : 二進制流數(shù)據(jù)(如常見的文件下載)
  • application/x-www-form-urlencoded : <form encType=””>中默認的encType,form表單數(shù)據(jù)被編碼為key/value格式發(fā)送到服務(wù)器(表單默認的提交數(shù)據(jù)的格式)

get和post的區(qū)別

  1. GET提交的數(shù)據(jù)會放在URL之后,以‘?’分割URL和傳輸數(shù)據(jù),參數(shù)之間以&相連,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的數(shù)據(jù)放在HTTP包的Body中.
  2. GET提交的數(shù)據(jù)大小有限制(因為瀏覽器對URL的長度有限制),而POST方法提交的數(shù)據(jù)沒有限制.
  3. GET方式需要使用Request.QueryString來取得變量的值,而POST方式通過Request.Form來獲取變量的值。
  4. GET方式提交數(shù)據(jù),會帶來安全問題,比如一個登錄頁面,通過GET方式提交數(shù)據(jù)時,用戶名和密碼將出現(xiàn)在URL上,如果頁面可以被緩存或者其他人可以訪問這臺機器,就可以從歷史記錄獲得該用戶的賬號和密碼.

HTTP 與 HTTPS 區(qū)別

  1. HTTP 明文傳輸,數(shù)據(jù)都是未加密的,安全性較差,HTTPS(SSL+HTTP) 數(shù)據(jù)傳輸過程是加密的,安全性較好。
  2. 使用 HTTPS 協(xié)議需要到 CA(Certificate Authority,數(shù)字證書認證機構(gòu)) 申請證書,一般免費證書較少,因而需要一定費用。證書頒發(fā)機構(gòu)如:Symantec、Comodo、GoDaddy 和 GlobalSign 等。
  3. HTTP 頁面響應(yīng)速度比 HTTPS 快,主要是因為 HTTP 使用 TCP 三次握手建立連接,客戶端和服務(wù)器需要交換 3 個包,而 HTTPS除了 TCP 的三個包,還要加上 ssl 握手需要的 9 個包,所以一共是 12 個包。
  4. http 和 https 使用的是完全不同的連接方式,用的端口也不一樣,前者是 80,后者是 443。
  5. HTTPS 其實就是建構(gòu)在 SSL/TLS 之上的 HTTP 協(xié)議,所以,要比較 HTTPS 比 HTTP 要更耗費服務(wù)器資源。
Http超文本傳輸協(xié)議

https與http

UDP協(xié)議和TCP協(xié)議都是傳輸層的協(xié)議,TCP協(xié)議提供可靠的通信傳輸,而UDP則是常常被用于讓廣播和細節(jié)控制的交給應(yīng)用的通信傳輸

Http超文本傳輸協(xié)議

tcp與udp

學(xué)習(xí)記錄,如有侵權(quán)請聯(lián)系刪除

分享到:
標簽:超文本 傳輸協(xié)議
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定