成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一篇帶給你HTTP協(xié)議詳解

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
HTTP是一個(gè)基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù)(HTML 文件, 圖片文件, 查詢結(jié)果等

[[393100]]

一、HTTP協(xié)議簡介

  • HTTP協(xié)議是Hyper Text Transfer Protocol(超文本傳輸協(xié)議)的縮寫,是用于從萬維網(wǎng)(WWW:World Wide Web )服務(wù)器傳輸超文本到本地瀏覽器的傳送協(xié)議,所有的WWW文件都必須遵守這個(gè)標(biāo)準(zhǔn)
  • HTTP是一個(gè)基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù)(HTML 文件, 圖片文件, 查詢結(jié)果等
  • HTTP是一個(gè)屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統(tǒng)。由請求和響應(yīng)構(gòu)成,是一個(gè)標(biāo)準(zhǔn)的客戶端服務(wù)器模型。HTTP是一個(gè)無狀態(tài)協(xié)議
  • HTTP協(xié)議工作于客戶端-服務(wù)端架構(gòu)為上。瀏覽器作為HTTP客戶端通過URL向HTTP服務(wù)端即WEB服務(wù)器發(fā)送所有請求。Web服務(wù)器根據(jù)接收到的請求后,向客戶端發(fā)送響應(yīng)信息

二、HTTP主要特點(diǎn)

  • 支持客戶端和服務(wù)端模式: HTTP工作于客戶端服務(wù)端的架構(gòu)之上,瀏覽器作為客戶端通過url向服務(wù)器及web服務(wù)器發(fā)送請求,web服務(wù)器根據(jù)接收到的請求向客戶端發(fā)送響應(yīng)信息
  • 簡單快速: 客戶端向服務(wù)器請求時(shí),只需傳送請求方法和路徑,請求方法有post、get等,每種方法規(guī)定了客戶端與服務(wù)端,連接的類型不同。由于HTTP協(xié)議簡單,使得HTTP服務(wù)程序規(guī)模小而且通信速度很快
  • 靈活: HTTP允許傳輸任意類型的數(shù)據(jù)對象
  • 無連接: 無連接的含義是限制每次連接只處理一個(gè)請求。服務(wù)器處理完客戶的請求,并收到客戶的應(yīng)答后,即斷開連接。采用這種方式可以節(jié)省傳輸時(shí)間
  • 無狀態(tài): 無狀態(tài)是指協(xié)議對事務(wù)處理沒有記憶能力,意味著如果后續(xù)處理需要前面的信息,則必須被重傳,這可能導(dǎo)致每次連接的數(shù)據(jù)量增大,另一方面不需要前面信息時(shí),它的應(yīng)答就較快

三、HTTP請求結(jié)構(gòu)

HTTP請求報(bào)文由3部分組成(請求行+請求頭部+請求正文)

HTTP請求結(jié)構(gòu):

3.1 請求行

請求行: 是由 請求字段、URL字段、HTTP協(xié)議版本字段 三個(gè)字段組成,他們用空格分隔,例如:GET/material/index HTTP/1.1\r\n根據(jù)HTTP標(biāo)準(zhǔn),HTTP請求可以使用多種請求方法

HTTP1.0定義了三種請求方法:GET,POST,HEAD方法。HTTP1.1新增了五種請求方法:OPTIONS,PUT,DELETE,TRACE,CONNECT方法

3.2 請求頭部

請求頭部: HTTP客戶程序(例如瀏覽器),向服務(wù)器發(fā)送請求的時(shí)候必須指明請求類型(一般是GET或者 POST),如有必要,客戶程序還可以選擇發(fā)送其他的請求頭。大多數(shù)請求頭并不是必需的,但Content-Length除外,對于POST請求來說 Content-Length必須出現(xiàn)

請求報(bào)頭通知服務(wù)器關(guān)于客戶端求求的信息,典型的請求頭有:

3.3 空行

他的作用是告訴服務(wù)器 請求頭部信息到此為止

3.4 請求正文

  1. 若方法是 GET,則該項(xiàng)為空。(數(shù)據(jù)都在url 地址欄里面)
  2. 若方法是 post 字段,則通常放置的是要 提交的數(shù)據(jù)

案例:

四、HTTP響應(yīng)結(jié)構(gòu)

HTTP響應(yīng)結(jié)構(gòu):

HTTP的響應(yīng)報(bào)文是由( 狀態(tài)行、響應(yīng)頭部、響應(yīng)正文) 三部分組成

4.1 響應(yīng)行

響應(yīng)行: 描述了響應(yīng)的狀態(tài),一般由協(xié)議版本、狀態(tài)碼及其描述組成 比如 HTTP/1.1200OK\r\n,其中協(xié)議版本HTTP/1.1或者HTTP/1.0,200就是它的狀態(tài)碼,OK則為它的描述。

五種可能的取值:

常見狀態(tài)碼:

4.2 響應(yīng)頭部

響應(yīng)頭部: 用于描述服務(wù)器的基本信息,以及數(shù)據(jù)的描述,服務(wù)器通過這些數(shù)據(jù)的描述信息,可以通知客戶端如何處理等一會(huì)兒它回送的數(shù)據(jù)。

4.3 響應(yīng)體

響應(yīng)體就是響應(yīng)的消息體,它包含了響應(yīng)的內(nèi)容。它可以包含HTML代碼,圖片,等等。主體是由傳輸在HTTP消息中緊跟在頭部后面的數(shù)據(jù)字節(jié)組成的。

案例:

五、瀏覽器輸入U(xiǎn)RL,回車之后請求流程

1. DNS解析:當(dāng)我們?yōu)g覽器會(huì)首先搜索瀏覽器自身的DNS緩存,也就是我們的hosts文件中去查找,如果瀏覽器自身緩存找不到則會(huì)查看系統(tǒng)的DNS緩存,如果找到且沒有過期則停止搜索解析到此結(jié)束,而如果本機(jī)沒有找到DNS緩存,則瀏覽器會(huì)發(fā)起一個(gè)DNS的系統(tǒng)調(diào)用,就會(huì)向本地配置的首選DNS服務(wù)器發(fā)起域名解析請求,最終會(huì)找到我們域名對應(yīng)的IP地址。

2. TCP解析:拿到域名對應(yīng)的IP地址之后,User-Agent(一般是指瀏覽器)會(huì)以一個(gè)隨機(jī)端口(1024< 端口 < 65535)向服務(wù)器的WEB程序(常用的有httpd,nginx等)80端口發(fā)起TCP的連接請求。這個(gè)連接請求到達(dá)服務(wù)器端后,進(jìn)入到網(wǎng)卡,然后是進(jìn)入到內(nèi)核的TCP/IP協(xié)議棧,最終到達(dá)WEB程序,最終建立了TCP/IP的連接

3. 發(fā)送HTTP請求: 建立了TCP連接之后,發(fā)起一個(gè)http請求

4. 服務(wù)器處理請求并返回HTTP報(bào)文: 服務(wù)器接受并處理完請求,返回 HTTP 響應(yīng),一個(gè)響應(yīng)報(bào)文格式基本等同于請求報(bào)文,由響應(yīng)行、響應(yīng)頭、空行、實(shí)體組成

5. 瀏覽器解析渲染頁面

6. 連接結(jié)束: TCP四次揮手,端口連接

六、Cookie和Session的區(qū)別

6.1 Cookie簡介:

  • 是由服務(wù)器發(fā)給客戶端的特殊信息,以文本的形式存放在客戶端
  • 客戶端再次請求的時(shí)候,會(huì)把Cookie回發(fā)
  • 服務(wù)器接收到后,會(huì)解析Cookie生存與客戶端相對于的內(nèi)容

Cookie的設(shè)置以及發(fā)送過程:

6.2 Session簡介:

  • 服務(wù)器端的機(jī)制,在服務(wù)器上保存的信息
  • 解析客戶端請求并操作session id,按需保存狀態(tài)信息

6.3 Cookie和Session的區(qū)別

  • Cookie數(shù)據(jù) 存放在客戶的瀏覽器上,Session的數(shù)據(jù)放在服務(wù)器上
  • Session相對于Cookie更安全
  • 若考慮減輕服務(wù)器負(fù)擔(dān),應(yīng)當(dāng)使用Cookie

七、總結(jié)

到這里呢,HTTP協(xié)議就講解完成了,以上就是小農(nóng)對于HTTP的認(rèn)識(shí),

 

責(zé)任編輯:姜華 來源: 牧小農(nóng)
相關(guān)推薦

2021-04-14 07:55:45

Swift 協(xié)議Protocol

2022-04-29 14:38:49

class文件結(jié)構(gòu)分析

2022-03-03 09:05:17

索引MySQL數(shù)據(jù)查詢

2023-03-09 07:47:56

BeanFactorSpring框架

2021-08-06 17:47:46

Kotin高階函數(shù)函數(shù)

2021-03-28 09:12:58

多線程死鎖技術(shù)熱點(diǎn)

2024-04-15 08:17:21

Spring依賴注入循環(huán)依賴

2021-07-12 06:11:14

SkyWalking 儀表板UI篇

2021-06-21 14:36:46

Vite 前端工程化工具

2021-01-28 08:55:48

Elasticsear數(shù)據(jù)庫數(shù)據(jù)存儲(chǔ)

2023-03-29 07:45:58

VS編輯區(qū)編程工具

2021-07-21 09:48:20

etcd-wal模塊解析數(shù)據(jù)庫

2022-02-17 08:53:38

ElasticSea集群部署

2021-04-08 11:00:56

CountDownLaJava進(jìn)階開發(fā)

2022-03-22 09:09:17

HookReact前端

2024-06-13 08:34:48

2021-03-12 09:21:31

MySQL數(shù)據(jù)庫邏輯架構(gòu)

2021-04-01 10:51:55

MySQL鎖機(jī)制數(shù)據(jù)庫

2021-10-28 08:51:53

GPIO軟件框架 Linux

2022-02-25 15:50:05

OpenHarmonToggle組件鴻蒙
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 亚洲国产二区 | 免费三级网 | 亚洲自拍偷拍欧美 | 欧美αv| 国产精品久久久久久影院8一贰佰 | 日日日视频 | 不卡欧美 | 日韩图区 | 国产成人免费 | 色吧综合网 | 91电影在线播放 | 欧美成人精品二区三区99精品 | 国产高清免费在线 | 成人av一区| 久久久免费精品 | 亚洲免费在线观看av | 91在线看 | 久草99| 国产一区成人 | 99在线资源 | 黄网站涩免费蜜桃网站 | 亚洲激情一级片 | 日韩欧美在线视频观看 | 欧美成年人视频在线观看 | 狠狠入ady亚洲精品经典电影 | 日韩最新网址 | 久草网站 | 精品久久久久久18免费网站 | 国产一区中文字幕 | 中文字幕日韩一区二区 | 久久亚洲美女 | 久草青青| 国产精品99久久久久久久vr | 丁香久久 | 一区二区三区久久久 | av在线播放网 | 日韩三区在线观看 | 亚洲人成人一区二区在线观看 | 99re热精品视频 | 综合网伊人 | 久久国产精品99久久久久久丝袜 |