中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

凡科網(wǎng)站教程免費檢測網(wǎng)站seo

凡科網(wǎng)站教程,免費檢測網(wǎng)站seo,快速搭建小程序,購物網(wǎng)站開發(fā)需要什么軟件HTTP 協(xié)議 什么是 HTTP 協(xié)議 HTTP(超文本傳輸協(xié)議,HyperText Transfer Protocol)是用于在客戶端(如瀏覽器)和服務(wù)器之間傳輸超文本(如網(wǎng)頁、圖片、視頻等)的應(yīng)用層協(xié)議。它是現(xiàn)代互聯(lián)網(wǎng)數(shù)據(jù)通…

HTTP 協(xié)議

什么是 HTTP 協(xié)議

HTTP(超文本傳輸協(xié)議,HyperText Transfer Protocol)是用于在客戶端(如瀏覽器)和服務(wù)器之間傳輸超文本(如網(wǎng)頁、圖片、視頻等)的應(yīng)用層協(xié)議。它是現(xiàn)代互聯(lián)網(wǎng)數(shù)據(jù)通信的基礎(chǔ),支持從 Web 服務(wù)器傳輸超文本到本地瀏覽器的傳送協(xié)議,幾乎所有網(wǎng)頁和應(yīng)用都依賴 HTTP 進(jìn)行交互。

HTTP 工作原理

HTTP 遵循請求-響應(yīng)模型,客戶端(通常是 Web 瀏覽器)發(fā)送一個 HTTP 請求到服務(wù)器,服務(wù)器處理該請求后返回一個 HTTP 響應(yīng)給客戶端。這個過程可以概括為以下幾個步驟:

  1. 建立連接:客戶端與服務(wù)器之間通過 TCP/IP 建立連接。在 HTTP/1.1之前,每個請求都需要重新建立連接;而 HTTP/1.1引入了持久連接,允許在一個 TCP 連接上傳輸多個請求和響應(yīng)。
  2. 發(fā)送請求消息:客戶端向服務(wù)器發(fā)送請求消息,這通常包括請求行(指定請求方法如 GET、POST 等,請求的 URL 以及 HTTP 版本)、請求頭部(提供關(guān)于請求的元數(shù)據(jù),例如瀏覽器類型、接受的內(nèi)容類型等)以及可選的請求體(對于 POST 請求,它包含要發(fā)送的數(shù)據(jù))。
  3. 處理請求并發(fā)送響應(yīng)消息:服務(wù)器接收到請求后進(jìn)行處理,并返回一個 HTTP 響應(yīng)消息給客戶端。響應(yīng)消息包含狀態(tài)行(顯示 HTTP 版本、狀態(tài)碼及描述短語)、響應(yīng)頭部(提供關(guān)于響應(yīng)的元數(shù)據(jù),如內(nèi)容類型、長度等)和響應(yīng)體(所請求的內(nèi)容,如HTML文檔、圖片等)。
  4. 關(guān)閉或保持連接:根據(jù)使用的 HTTP 版本和配置,連接可能會被立即關(guān)閉或保持打開以供后續(xù)請求使用。

HTTP 特點

  • 無狀態(tài)性:HTTP 本身是無狀態(tài)協(xié)議,即每個請求都是獨立的,服務(wù)器不會保存客戶端的狀態(tài)信息。然而,通過使用 Cookies、Session 等技術(shù)可以在一定程度上實現(xiàn)有狀態(tài)的交互。
  • 簡單快速:客戶端向服務(wù)器請求服務(wù)時,只需提供請求方法和路徑即可,因此 HTTP 協(xié)議簡單且高效。
  • 靈活:HTTP 允許傳輸任意類型的數(shù)據(jù)對象,通過 Content-Type 標(biāo)記來指示數(shù)據(jù)的類型。
  • 安全性:盡管 HTTP 本身并不安全,但可以通過 SSL/TLS 加密升級為 HTTPS,從而確保數(shù)據(jù)的安全傳輸。

HTTP 的發(fā)展歷程

HTTP/0.9

蒂姆伯納斯李是一位英國計算機(jī)科學(xué)家,也是萬維網(wǎng)的發(fā)明者。他在1989年創(chuàng)建了單行 HTTP 協(xié)議,它只是返回一個網(wǎng)頁,這個協(xié)議在1991年被命名為 HTTP/0.9。

HTTP/1.0

1996年,HTTP/1.0 發(fā)布。該規(guī)范是顯著擴(kuò)大,并且支持三種請求方法:get,head 和 post。

HTTP/1.0 相對于 HTTP/0.9 的改進(jìn)如下:

  • 每個請求都附加了 HTTP 版本。
  • 在響應(yīng)開始時發(fā)送狀態(tài)代碼。
  • 請求和響應(yīng)都包含 HTTP 報文頭。
  • 內(nèi)容類型能夠傳輸 HTTP 文件以外的文檔。

但是,HTTP/1.0 不是官方標(biāo)準(zhǔn)。

HTTP/1.1

HTTP 的第一個標(biāo)準(zhǔn)化版本 HTTP/1.1 (RFC 2068)于1997年初發(fā)布,支持七種請求方法:options,get,head,post,put,delete 和 trace。

HTTP/1.1 是 HTTP/1.0 的增強(qiáng):

  • 虛擬主機(jī)允許從單個 IP 地址提供多個域。
  • 持久連接和流水線連接允許 Web 瀏覽器通過單個持久連接發(fā)送多個請求。
  • 緩存支持節(jié)省了寬帶并使響應(yīng)速度更快。

HTTP/1.1 在接下來的15年左右非常穩(wěn)定。

在此期間,出現(xiàn)了 HTTPS(安全超文本傳輸協(xié)議)。它是使用 SSL/TLS 進(jìn)行安全加密通信的 HTTP 的安全版本。

HTTP/2

由 IETF 在2015年發(fā)布,HTTP/2 旨在提高 web 性能,減少延遲,增加安全性,使 web 應(yīng)用更加快速、高效和可靠。

  • 多路復(fù)用:HTTP/2 允許同時發(fā)送多個請求和響應(yīng),而不是像 HTTP/1.1 一樣只能一個一個地處理,這樣可以減少延遲,提高效率,提高網(wǎng)絡(luò)吞吐量。
  • 二進(jìn)制傳輸:HTTP/2 使用二進(jìn)制協(xié)議,與 HTTP/1.1 使用的文本協(xié)議不同,二進(jìn)制協(xié)議可以更快地解析,更有效地傳輸數(shù)據(jù),減少了傳輸過程中的開銷和延遲。
  • 頭部壓縮:HTTP/2 使用 HPACK 算法對 HTTP 頭部進(jìn)行壓縮,減少了頭部傳輸?shù)臄?shù)據(jù)量,從而減少了網(wǎng)絡(luò)延遲。
  • 服務(wù)器推送:HTTP/2 支持服務(wù)器推送,允許服務(wù)器在客戶端請求之前推送資源,以提高性能。
  • 改進(jìn)的安全性:HTTP/2 默認(rèn)使用 TLS(Transport Layer Security)加密傳輸數(shù)據(jù),提高了安全性。
  • 兼容 HTTP/1.1:HTTP/2 可以與 HTTP/1.1 共存,服務(wù)器可以同時支持 HTTP/1.1 和 HTTP/2,如果客戶端不支持 HTTP/2,服務(wù)器可以回退到 HTTP/1.1。

HTTP/3

于2021年5月27日發(fā)布,HTTP/3 是一種新的、快速、可靠以及安全的協(xié)議,適用于所有形式的設(shè)備。HTTP/3 沒有使用 TCP,而是使用谷歌在2012年開發(fā)的新協(xié)議 QUIC。

HTTP/3 是繼 HTTP/1.1 和 HTTP/2 之后的第三次重大修訂。

HTTP/3 帶來了革命性的變化,以提高 web 性能和安全性,設(shè)置 HTTP/3 網(wǎng)站需要服務(wù)器和瀏覽器支持。

目前,谷歌云、Cloudflare 和 Fastly 支持 HTTP/3。Chrome、Firefox、Edge、Opera 和一些移動瀏覽器支持 HTTP/3。

請求和響應(yīng)報文

報文的格式

主體上分為報文首部和報文主體,中間空行隔開。

在這里插入圖片描述

報文首部可以繼續(xù)細(xì)分為“行”和“頭”。

在這里插入圖片描述

請求報文

客戶端發(fā)送給服務(wù)端的報文。

請求報文格式
  • 請求首行(請求行);GET/POST 資源路徑?參數(shù) HTTP/1.1
  • 請求頭信息(請求頭)。
  • 空行。
  • 請求體;POST請求才有請求體

瀏覽器按住F12可以打開瀏覽器的開發(fā)者工具,點擊網(wǎng)絡(luò)就可以查看請求數(shù)據(jù)包

在這里插入圖片描述

form 表單發(fā)送 get 請求特點
  • 由于請求參數(shù)在請求首行中已經(jīng)攜帶了,所以沒有請求體,也沒有請求空行。
  • 請求參數(shù)拼接在 url 地址中,地址欄可見 url?key1=value1&key2=value2,不安全。
  • 參數(shù)在地址欄中攜帶,有大小限制(一般限制為4k),只能攜帶純文本。
  • get 請求參數(shù)只能上傳文本數(shù)據(jù)。
  • 沒有請求體,所以封裝和解析快,效率高,瀏覽器默認(rèn)提交的請求都是 get 請求,例如:地址欄輸入回車,超鏈接,表單默認(rèn)的提交方式等。
查看 get 請求行、請求頭、請求體
  • 請求行組成部分:
    • 請求方式 get
    • 訪問服務(wù)器的資源路徑?參數(shù)1=值1&參數(shù)2=值2……
    • 協(xié)議/版本,例如:HTTP/1.1
GET /05_web_tomcat/login_success.html?username=admin&password=123456 HTTP/1.1
  • 請求頭:

    • Host:主機(jī)虛擬地址。
    • Connection:控制網(wǎng)絡(luò)連接,值為 keep-alive 時為長連接。
    • Upgrade-Insecure-Requests:請求協(xié)議的自動升級(HTTP 的請求,如果服務(wù)器是 HTTPS 的,瀏覽器會自動將請求協(xié)議升級為 HTTPS)。
    • User-Agent:用戶系統(tǒng)信息。
    • Accept:瀏覽器支持的文件類型。
    • Referer:當(dāng)前頁面的上一個頁面的路徑。
    • Accept-Encoding:瀏覽器支持的壓縮格式。
    • Accept-Language:瀏覽器支持的語言。
  • 請求空行

  • 請求體

    • get 請求數(shù)據(jù)不放在請求體里。
form 表單發(fā)送 post 請求特點
  • post 請求有請求體,而 get 請求沒有請求體。
  • post 請求數(shù)據(jù)在請求體中攜帶,請求體數(shù)據(jù)大小沒有限制,可以用來上傳所有內(nèi)容(文件、文本等)。
  • 只能使用 post 請求上傳文件。
  • post 請求報文多路和請求體相關(guān)的配置(請求頭)。
  • 地址欄參數(shù)不可見,相對安全。
  • post 效率比 get 低。
  • post 請求要求將 form 標(biāo)簽的 method 屬性設(shè)置為 post。

在這里插入圖片描述

查看 post 請求行、請求頭、請求體
  • 請求行組成部分:

    • 請求方式 post

    • 訪問服務(wù)器的資源路徑

    • 協(xié)議/版本,例如:HTTP/1.1

POST /05_web_tomcat/login_success.html HTTP/1.1
  • 請求頭
  • 請求空行
  • 請求體
username=admin&password=123456

響應(yīng)報文

服務(wù)端返回給客戶端的報文。

響應(yīng)報文格式
  • 響應(yīng)首行(響應(yīng)行):協(xié)議/版本 狀態(tài)碼 狀態(tài)碼描述。
  • 響應(yīng)頭信息(響應(yīng)頭)。
  • 空行。
  • 響應(yīng)體。

在這里插入圖片描述

  • 響應(yīng)行組成部分
    • 協(xié)議/版本 HTTP/1.1
    • 響應(yīng)狀態(tài)碼
    • 狀態(tài)描述 OK (缺省)
HTTP/1.1 200 OK
  • 響應(yīng)頭
    • Server:服務(wù)器的版本信息。
    • Accept-Ranges:客戶端服務(wù)器是否允許范圍請求,即客戶端可以請求資源的某個部分而不是整個資源,值為 bytes 時,表示服務(wù)器支持按字節(jié)范圍請求資源。
    • Content-Type:響應(yīng)體數(shù)據(jù)的類型。
    • Content-Length:響應(yīng)體內(nèi)容的字節(jié)數(shù)。
    • Date:響應(yīng)的時間。
    • Last-Mondified:提供文檔最后修改的時間,可用于驗證緩存的有效性。
  • 響應(yīng)體

常見的響應(yīng)狀態(tài)碼

  • 200:請求成功,瀏覽器會把響應(yīng)體內(nèi)容(通常為 html)顯示在瀏覽器中。
  • 302:重定向,表示服務(wù)器要求瀏覽器重新再發(fā)一個請求,服務(wù)器會發(fā)送一個響應(yīng)頭 Location 指定新請求的 url 地址。
  • 304:使用了本地緩存。
  • 404:請求的資源沒有找到,說明客戶端錯誤的請求了不存在的資源。
  • 405:請求的方法不允許。
  • 500:請求資源找到了,但服務(wù)器內(nèi)部出現(xiàn)了錯誤。

響應(yīng)的狀態(tài)碼

HTTP 響應(yīng)狀態(tài)碼是服務(wù)器對客戶端請求的響應(yīng)結(jié)果的一種標(biāo)準(zhǔn)化表示,它由三位數(shù)字組成,分為五類,每類都有一個共同的起始數(shù)字,具體如下:

  1. 1xx(信息性狀態(tài)碼):指示請求已接收,繼續(xù)處理。
    • 100 Continue:表明請求的初始部分已經(jīng)被接收,客戶端應(yīng)繼續(xù)發(fā)送剩余部分。
    • 101 Switching Protocols:服務(wù)器根據(jù)客戶端的請求切換協(xié)議。
  2. 2xx(成功狀態(tài)碼):表示請求已被成功接收、理解和接受。
    • 200 OK:標(biāo)準(zhǔn)的成功響應(yīng),表明請求成功并且信息包含在響應(yīng)中。
    • 201 Created:請求成功且服務(wù)器創(chuàng)建了新的資源。
    • 204 No Content:請求成功但響應(yīng)報文中不包含實體的主體部分。
  3. 3xx(重定向狀態(tài)碼):需要采取進(jìn)一步操作以完成請求。
    • 301 Moved Permanently:請求的資源已被永久移動到新位置,并且未來對該資源的任何引用都應(yīng)該使用本響應(yīng)返回的URI。
    • 302 Found:與301類似,但是它是臨時性的重定向。
    • 304 Not Modified:如果客戶端執(zhí)行了條件 GET 請求且該頁面自上次訪問以來未被修改,則服務(wù)器會返回此狀態(tài)碼。
  4. 4xx(客戶端錯誤狀態(tài)碼):請求包含語法錯誤或無法完成請求。
    • 400 Bad Request:服務(wù)器無法理解請求的格式,客戶端應(yīng)當(dāng)修改請求后再試。
    • 401 Unauthorized:當(dāng)前請求需要用戶驗證。
    • 403 Forbidden:服務(wù)器理解請求但拒絕執(zhí)行。
    • 404 Not Found:請求的資源在服務(wù)器上不存在。
    • 405 Method Not Allowed:請求方法對指定資源不適用。
  5. 5xx(服務(wù)器錯誤狀態(tài)碼):服務(wù)器遇到錯誤,無法完成有效請求。
    • 500 Internal Server Error:服務(wù)器遇到了未知情況,阻止了它完成請求。
    • 501 Not Implemented:服務(wù)器不具備完成請求的功能。例如,服務(wù)器既不識別請求方法也不支持其對應(yīng)的資源類型。
    • 502 Bad Gateway:作為網(wǎng)關(guān)或代理工作的服務(wù)器嘗試執(zhí)行請求時,從上游服務(wù)器接收到無效響應(yīng)。
    • 503 Service Unavailable:由于臨時維護(hù)或者過載,服務(wù)器當(dāng)前無法處理請求。
    • 504 Gateway Timeout:作為網(wǎng)關(guān)或代理工作的服務(wù)器未能及時從上游服務(wù)器獲得響應(yīng)。

每個狀態(tài)碼都提供了關(guān)于請求過程中的特定信息,幫助開發(fā)人員和系統(tǒng)管理員診斷問題并優(yōu)化應(yīng)用性能。理解這些狀態(tài)碼對于有效的 Web 開發(fā)至關(guān)重要。

http://www.risenshineclean.com/news/32397.html

相關(guān)文章:

  • 高端的網(wǎng)站名稱在線crm系統(tǒng)
  • 惠州悅商做網(wǎng)站優(yōu)化設(shè)計方案
  • 做網(wǎng)站賺錢 知乎騰訊企點客服
  • 網(wǎng)站備案大概需要多久微信最好用的營銷軟件
  • 企業(yè)車輛管理系統(tǒng)平臺seo軟件代理
  • 機(jī)加工網(wǎng)站南通seo網(wǎng)站優(yōu)化軟件
  • 自適應(yīng)網(wǎng)站推廣sem代運(yùn)營公司
  • 怎么自建導(dǎo)購網(wǎng)站做淘客正能量網(wǎng)站地址鏈接免費
  • 網(wǎng)站頁尾內(nèi)容推廣公司主要做什么
  • 易居房產(chǎn)網(wǎng)下載路由優(yōu)化大師
  • 網(wǎng)站平臺建設(shè)論文搜索關(guān)鍵詞軟件
  • 網(wǎng)站建設(shè)架刷贊業(yè)務(wù)推廣網(wǎng)站
  • 做網(wǎng)站所需要的項aso優(yōu)化是什么意思
  • 東莞網(wǎng)頁設(shè)計百度seo排名優(yōu)化
  • 沈陽網(wǎng)站建設(shè)報價搜索引擎優(yōu)化策略有哪些
  • 怎么做網(wǎng)站推廣知乎百度資源平臺鏈接提交
  • 太原市網(wǎng)站網(wǎng)絡(luò)廣告有哪些形式
  • wordpress cms下載滄州網(wǎng)站優(yōu)化公司
  • 怎么樣給公司做網(wǎng)站蘭州網(wǎng)絡(luò)推廣新手
  • 技術(shù)先進(jìn)的網(wǎng)站建設(shè)百度一下馬上知道
  • 武漢手機(jī)網(wǎng)站公司簡介電商網(wǎng)
  • 自建服務(wù)器網(wǎng)站備案營銷廣告文案
  • 漳州網(wǎng)站建設(shè)去博大a優(yōu)整合網(wǎng)絡(luò)營銷是什么
  • 長沙多少例新型冠狀病毒seo外包資訊
  • 網(wǎng)站建設(shè)圖片怎么做阿里云建站費用
  • 漳州市網(wǎng)站建設(shè)費用電商平臺怎么加入
  • 安徽省建設(shè)工程八大員報名網(wǎng)站營口seo
  • python做網(wǎng)站快嗎關(guān)鍵詞智能調(diào)詞工具
  • 做外貿(mào)雨傘到什么網(wǎng)站合肥網(wǎng)絡(luò)seo推廣服務(wù)
  • 網(wǎng)站在線客服系統(tǒng)搭建seo實戰(zhàn)培訓(xùn)視頻