HTTP:請(qǐng)求與響應(yīng)

HTTP 的作用就是指導(dǎo)瀏覽器和服務(wù)器如何進(jìn)行溝通。每個(gè)電腦都有很多端口,每一個(gè)端口都要做指定的事情
??a. 瀏覽器負(fù)責(zé)發(fā)起請(qǐng)求
??b. 服務(wù)器在 80 端口接收請(qǐng)求
??c. 服務(wù)器負(fù)責(zé)返回內(nèi)容(響應(yīng))
??d. 瀏覽器負(fù)責(zé)下載響應(yīng)內(nèi)容
請(qǐng)求示例:

curl -s -v -H "Frank: xxx" -- "https://www.baidu.com"

用get請(qǐng)求百度:

1.  GET / HTTP/1.1  /*動(dòng)詞+路徑(無(wú)意義跟文件沒(méi)有任何關(guān)系)+協(xié)議*/
2.  Host:baidu.com  /*我想訪問(wèn)baidu.com */
3.  Accpet:text/html /*我希望接收到的是html文件 */

百度給的響應(yīng):

1.  HTTP/1.1 200 OK   /*我是HTTP/1.1,ok,沒(méi)有問(wèn)題,你需要什么我可以給你什么*/
2.  Content-Type:text-html;charset=utf-8  /* Content-Type的內(nèi)容就是你想要的文件再給你一個(gè)字符集,方便你解釋中文*/
Content-Length:10000  /*我傳給你的html長(zhǎng)度是10000個(gè)字節(jié)*/
3.  回車(\n)
4.  <!DOCTYPE>
<html>…</html>/*這個(gè)就是百度傳給我們的文件內(nèi)容,中間部分省略*/

用POST 請(qǐng)求百度(登錄百度):

Post  /login HTTP/1.1  /*用post發(fā)請(qǐng)求來(lái)登錄,用的是HTTP/1.1協(xié)議*/
Host:baidu.com  /*登錄百度*/
Accept:application/json /*想要接收json*/
Content-Type:application/x-www-form-urlencoded /*發(fā)內(nèi)容給它*/
Content-Length:10
回車(\n)
Username:fangfang&password:mima  /*這是我上傳的內(nèi)容*/

百度給的響應(yīng):

1.  HTTP/1.1 403 Forbidden  /*禁止登錄*/
2.  Content-Type: application/json
Content-Length:200
3.  回車(\n)
4.  {“error”:密碼錯(cuò)誤}

請(qǐng)求的形式總結(jié):

第一部分:動(dòng)詞 路徑 協(xié)議/版本   HTTP/1.1
第二部分:你要告訴訪問(wèn)的主機(jī)你想要什么
第三部分:按回車(\n)
第四部分:要獲取/上傳的數(shù)據(jù)

響應(yīng)的形式總結(jié):

第一部分:協(xié)議號(hào)/版本號(hào)  狀態(tài)碼  狀態(tài)解釋
第二部分:訪問(wèn)的主機(jī)告訴你它給你了什么(第二部分是對(duì)第四部分格式的標(biāo)注)
第三部分:按回車(\n)
第四部分:訪問(wèn)的主機(jī)傳回給我們的文件內(nèi)容

get和post的區(qū)別:get是獲取內(nèi)容;post是上傳內(nèi)容

用 Chrome 發(fā)請(qǐng)求:

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

用 Chrome 查看響應(yīng)

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

資源
狀態(tài)碼詳解

最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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