HTTP請(qǐng)求響應(yīng)的內(nèi)容有哪些?

HTTP 請(qǐng)求包括哪些部分

  • HTTP請(qǐng)求報(bào)文由請(qǐng)求行(request line)、請(qǐng)求頭部(request header)、請(qǐng)求數(shù)據(jù)和空行4個(gè)部分組成,最少包含三個(gè)部分,也就是說(shuō)第四部分可以為空
1. 請(qǐng)求行
  • 請(qǐng)求的第一行是:方法、URL、HTTP協(xié)議版本
  • 例如:GET /index.html HTTP/1.1
    get方法將數(shù)據(jù)拼接在url后面,傳遞參數(shù)受限 HTTP/1.1代表協(xié)議和協(xié)議的版本。
  • 請(qǐng)求方法大概有:
    GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT
2. 請(qǐng)求頭(key value形式)

User-Agent:產(chǎn)生請(qǐng)求的瀏覽器類型。
Accept:客戶端可識(shí)別的內(nèi)容類型列表。
Host:主機(jī)地址

3. 請(qǐng)求數(shù)據(jù)

請(qǐng)求正文中可以包含用戶提交的查詢信息,在post方法中,將數(shù)據(jù)以key value形式發(fā)送請(qǐng)求

4. 空行

發(fā)送回車符和換行符,通知服務(wù)器以下不再有請(qǐng)求頭


使用Chrome開發(fā)者工具查看 HTTP 請(qǐng)求內(nèi)容

  1. 用 Chrome 發(fā)請(qǐng)求
  2. 打開 Network
  3. 地址欄輸入網(wǎng)址
  4. 在 Network 點(diǎn)擊,查看 request,點(diǎn)擊「view source」可查看請(qǐng)求的前三部分
  5. 如果有請(qǐng)求的第四部分,那么在 FormData 或 Payload 里面可以看到

HTTP 響應(yīng)包括哪些部分

  • HTTP響應(yīng)也是由3個(gè)部分組成,分別是:
1. 響應(yīng)消息行

包含協(xié)議/版本,響應(yīng)狀態(tài)碼,對(duì)響應(yīng)狀態(tài)碼的描述

  • 狀態(tài)代碼的第一個(gè)數(shù)字定義了響應(yīng)的類別,后面兩位沒(méi)有具體的分類。第一個(gè)數(shù)字有五種可能的取值:
    1xx: 指示信息—表示請(qǐng)求已接收,繼續(xù)處理。
    2xx: 成功—表示請(qǐng)求已經(jīng)被成功接收、理解、接受。
    3xx: 重定向—要完成請(qǐng)求必須進(jìn)行更進(jìn)一步的操作。
    4xx: 客戶端錯(cuò)誤—請(qǐng)求有語(yǔ)法錯(cuò)誤或請(qǐng)求無(wú)法實(shí)現(xiàn)。
    5xx: 服務(wù)器端錯(cuò)誤—服務(wù)器未能實(shí)現(xiàn)合法的請(qǐng)求。
    HTTP狀態(tài)碼?百科全書
2.響應(yīng)消息頭

服務(wù)器與客戶端通信的暗碼,告訴客戶端該怎么執(zhí)行某些操作

3.響應(yīng)消息正文

和網(wǎng)頁(yè)右鍵“查看源碼”看到的內(nèi)容一樣


使用Chrome開發(fā)者工具查看 HTTP 響應(yīng)內(nèi)容

  1. 用 Chrome 查看響應(yīng)
  2. 打開 Network
  3. 輸入網(wǎng)址選中第一個(gè)響應(yīng)
  4. 查看 Response Headers,點(diǎn)擊「view source」,可已看到響應(yīng)的前兩部分
  5. 查看 Response 或者 Preview,你會(huì)看到響應(yīng)的第 4 部分

如何使用 curl 命令

  • 1、GET請(qǐng)求訪問(wèn)百度的命令:
    curl -s -v -- "https://www.baidu.com"
  • 2、如果要獲取網(wǎng)頁(yè)時(shí)使用額外的標(biāo)題,可以輸入命令:
    url -s -v -H "Lambert: xxx" -- "https://www.baidu.com"
  • 3、POST請(qǐng)求使用額外標(biāo)題訪問(wèn)QQ的命令:
    curl -X POST -s -v -H "Lambert: xxx" -- "https://www.qq.com"
  • 4、POST請(qǐng)求訪問(wèn)并指定數(shù)據(jù)發(fā)送HTTP服務(wù)器命令:
    curl -X POST -d "111111111" -s -v -H "Lambert: xxx" -- "https://www.qq.com"
  • 5、下載一個(gè)頁(yè)面的內(nèi)容
    • curl 網(wǎng)址>本地文件夾路徑
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,234評(píng)論 25 708
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,053評(píng)論 2 59
  • Server + Client + HTTP 瀏覽器負(fù)責(zé)發(fā)起請(qǐng)求 服務(wù)器在 80 端口接收請(qǐng)求 服務(wù)器負(fù)責(zé)返回內(nèi)容...
    ScottWalker閱讀 620評(píng)論 0 0
  • Server + Client + HTTP 瀏覽器負(fù)責(zé)發(fā)起請(qǐng)求 服務(wù)器在 80 端口接收請(qǐng)求 服務(wù)器負(fù)責(zé)返回內(nèi)容...
    夜未央_M閱讀 2,095評(píng)論 0 0
  • 這條到河沿的土路,三十多年前的表姐妹幾個(gè)替班步行去杏樹行子看杏,一天多個(gè)來(lái)回,睡在窩棚里,爬到樹尖上...
    魏玉花閱讀 321評(píng)論 0 0

友情鏈接更多精彩內(nèi)容