国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求

這篇具有很好參考價(jià)值的文章主要介紹了【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


前言

各位讀者好, 我是小陳, 這是我的個(gè)人主頁(yè), 希望我的專欄能夠幫助到你:
?? JavaSE基礎(chǔ): 基礎(chǔ)語(yǔ)法, 類和對(duì)象, 封裝繼承多態(tài), 接口, 綜合小練習(xí)圖書(shū)管理系統(tǒng)等
?? Java數(shù)據(jù)結(jié)構(gòu): 順序表, 鏈表, 堆, 二叉樹(shù), 二叉搜索樹(shù), 哈希表等
?? JavaEE初階: 多線程, 網(wǎng)絡(luò)編程, TCP/IP協(xié)議, HTTP協(xié)議, Tomcat, Servlet, Linux, JVM等(正在持續(xù)更新)

上篇文章介紹了HTTP協(xié)議的報(bào)文格式, 分析了請(qǐng)求報(bào)文和響應(yīng)報(bào)中需要掌握的屬性或字段, 本篇主要介紹如何構(gòu)造一個(gè)HTTP請(qǐng)求


提示:是正在努力進(jìn)步的小菜鳥(niǎo)一只,如有大佬發(fā)現(xiàn)文章欠佳之處歡迎批評(píng)指點(diǎn)~ 廢話不多說(shuō),直接上干貨!

一、地址欄輸入

在地址欄輸入一個(gè) URL, 訪問(wèn)頁(yè)面就會(huì)發(fā)送 GET 請(qǐng)求

比如在地址欄輸入百度的域名 :
【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

抓到的包顯示, 發(fā)送了一個(gè) GET 請(qǐng)求, 響應(yīng)就是百度的 HTML 頁(yè)面

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)


二、HTML 特殊標(biāo)簽

HTML 中的 link, img, script, a 標(biāo)簽都會(huì)觸發(fā) GET 請(qǐng)求(前提是訪問(wèn)網(wǎng)絡(luò)資源而不是本地資源)

在瀏覽器打開(kāi) HTML 文件后, 加載完所有的標(biāo)簽, 會(huì)根據(jù)以上這些標(biāo)簽給服務(wù)器發(fā)送 GET 請(qǐng)求以獲取網(wǎng)絡(luò)資源


三、form 表單

form (表單) 是 HTML 中的一個(gè)常用標(biāo)簽. 可以用于給服務(wù)器發(fā)送 GET 或者 POST 請(qǐng)求

form 表單只能發(fā)送 GET 或 POST 方法的請(qǐng)求, 其他的方法不可以

  • 編寫(xiě)一個(gè)簡(jiǎn)單的 form 表單來(lái)構(gòu)造 GET 請(qǐng)求 :
	<!-- action里是要訪問(wèn)的url, method指定請(qǐng)求的方法 -->
    <form action="https://www.baidu.com/abc" method="get">
        <input type="text" name = "a">
        <input type="text" name = "b">
        <input type="submit" value="提交">
    </form>
  • 運(yùn)行這段代碼 :

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 分別填寫(xiě) 111999, 點(diǎn)擊提交, 會(huì)發(fā)現(xiàn) 404 了, 因?yàn)槲覀兊?URL 是隨便寫(xiě)的, 根本不存在, 但不影響我們發(fā)送請(qǐng)求

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 通過(guò)抓包工具可以看到我們發(fā)送成功了 GET 請(qǐng)求

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 觀察 form 代碼和這個(gè) GET 請(qǐng)求之間的關(guān)系 :
    【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 剛剛的 form 代碼中把 method=“get” 改成 method=“post”, 來(lái)構(gòu)造一個(gè) POST 請(qǐng)求
	<!-- action里是要訪問(wèn)的url, method指定請(qǐng)求的方法 -->
    <form action="https://www.baidu.com/abc" method="post">
        <input type="text" name = "a">
        <input type="text" name = "b">
        <input type="submit" value="提交">
    </form>
  • 展示效果不變, 還是依次輸入 111999 點(diǎn)擊提交 :
    【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 依然404, 因?yàn)?URL 是瞎寫(xiě)的, 但不影響抓包, 可以看到構(gòu)造成功了一個(gè) POST 請(qǐng)求

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

  • 觀察 form 代碼和 POST 請(qǐng)求的關(guān)系 :
    【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

綜上:
1, form 表單構(gòu)造請(qǐng)求, 根據(jù)代碼中 name 的值會(huì)形成健, 用戶輸入的會(huì)形成值, 這二者結(jié)合成鍵值對(duì)
2, 如果是 GET 請(qǐng)求, form 構(gòu)造的數(shù)據(jù)以 query string 的形式被攜帶在 URL 中, 如果是 POST 請(qǐng)求, 數(shù)據(jù)在請(qǐng)求報(bào)文的 Body 中

版本號(hào)默認(rèn)為HTTP/1.1


四、ajax

目前 ajax 是最主流的前后端交互方式之一

ajax 全稱 Asynchronous Javascript And XML, 是 2005 年提出的一種 JavaScript 給服務(wù)器發(fā)送HTTP 請(qǐng)求的方式

Asynchronous, 意思是異步, 反義詞是同步
在多線程場(chǎng)景下, 同步是指多個(gè)線程可以同時(shí)訪問(wèn)同一個(gè)資源, 加了(互斥)鎖之后就必須阻塞等待
在當(dāng)前 IO 場(chǎng)景下, 同步是指請(qǐng)求的發(fā)起者, 自行獲取響應(yīng), 異步是指, 請(qǐng)求的發(fā)起者不關(guān)心相應(yīng)的結(jié)果, 由響應(yīng)者把響應(yīng)結(jié)果推送請(qǐng)求者

ajax 就是前后端異步交互的方式, 由于JavaScript 提供的原生 API 比較難用, 我們使用 jQuery 提供的 ajax API 來(lái)構(gòu)造請(qǐng)求 :

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)

可惜的是, 這個(gè)代碼會(huì)報(bào)錯(cuò)

因?yàn)?ajax 的保護(hù)機(jī)制, 不允許跨域訪問(wèn), 此處運(yùn)行 ajax 的服務(wù)器和要訪問(wèn)的服務(wù)器域名不一致, 關(guān)于跨域問(wèn)題暫時(shí)不多做討論, 將來(lái)自己做網(wǎng)站, 自己的頁(yè)面訪問(wèn)自己的服務(wù)器, 自然就沒(méi)有跨域問(wèn)題了

另外, 不只是 JS 可以, Java, C++, Pyhon等能夠操作網(wǎng)絡(luò)的語(yǔ)言, 都可以構(gòu)造 HTTP 請(qǐng)求


總結(jié)

以上就是本篇的全部?jī)?nèi)容, 主要介紹了如何 構(gòu)造HTTP 協(xié)議的請(qǐng)求

如果本篇對(duì)你有幫助,請(qǐng)點(diǎn)贊收藏支持一下,小手一抖就是對(duì)作者莫大的鼓勵(lì)啦??????~


上山總比下山辛苦
下篇文章見(jiàn)

【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求,JavaEE初階,http,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò)
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-520294.html

到了這里,關(guān)于【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • HTTP協(xié)議(JavaEE初階系列15)

    HTTP協(xié)議(JavaEE初階系列15)

    目錄 前言: 1.HTTP協(xié)議 1.1HTTP協(xié)議是什么 1.2HTTP協(xié)議的報(bào)文格式 1.2.1抓包工具的使用 1.2.2HTTP請(qǐng)求 1.2.3HTTP響應(yīng) 2.HTTP請(qǐng)求 2.1首行的組成 2.2.1URL的組成 2.2認(rèn)識(shí)“方法”(method) 2.2.1GET方法 2.2.2POST方法 2.2.3GET和POST請(qǐng)求的區(qū)別 2.3認(rèn)識(shí)請(qǐng)求“報(bào)頭”(header) 2.4認(rèn)識(shí)請(qǐng)求正文(body) 3

    2024年02月11日
    瀏覽(50)
  • 【Http協(xié)議④】常見(jiàn)的幾種構(gòu)造http請(qǐng)求的方式,form表單構(gòu)造,Ajax構(gòu)造,postman構(gòu)造

    【Http協(xié)議④】常見(jiàn)的幾種構(gòu)造http請(qǐng)求的方式,form表單構(gòu)造,Ajax構(gòu)造,postman構(gòu)造

    前言: 大家好,我是 良辰丫 ,這篇文章我將協(xié)同大家一起去學(xué)習(xí)幾種構(gòu)造http請(qǐng)求的方式.?????? ??個(gè)人主頁(yè):良辰針不戳 ??所屬專欄:javaEE初階 ??勵(lì)志語(yǔ)句:生活也許會(huì)讓我們遍體鱗傷,但最終這些傷口會(huì)成為我們一輩子的財(cái)富。 ??期待大家三連,關(guān)注,點(diǎn)贊,收藏。

    2024年02月06日
    瀏覽(25)
  • 網(wǎng)絡(luò)原理 - HTTP / HTTPS(4)——構(gòu)造http請(qǐng)求

    網(wǎng)絡(luò)原理 - HTTP / HTTPS(4)——構(gòu)造http請(qǐng)求

    目錄 一、postman 的下載安裝以及簡(jiǎn)單介紹 1、下載安裝 2、postman的介紹 二、通過(guò) Java socket 構(gòu)造 HTTP 請(qǐng)求 ? ? ? ? 構(gòu)造http請(qǐng)求的方式有兩種: (1)通過(guò)代碼構(gòu)造 (有一點(diǎn)難度)? ? ? ? (2)通過(guò)第三方工具構(gòu)造 (非常容易)。 ? ? ? ? 下面介紹第三方工具構(gòu)造http請(qǐng)求,這

    2024年04月17日
    瀏覽(31)
  • 安卓網(wǎng)絡(luò)請(qǐng)求1————Http協(xié)議

    安卓網(wǎng)絡(luò)請(qǐng)求1————Http協(xié)議

    http是超文本傳輸協(xié)議的縮寫(xiě)(Hyper Text Transfer Protocol),是從萬(wàn)維網(wǎng)服務(wù)器傳送到本地瀏覽器的傳送協(xié)議 HTTP的協(xié)議工作于客戶端——服務(wù)端的框架上,即客戶端向服務(wù)端發(fā)送請(qǐng)求,服務(wù)端接收請(qǐng)求后向客戶端發(fā)送響應(yīng)信息 1.http是無(wú)連接的:無(wú)連接的含義是限制每次連接值處

    2024年02月06日
    瀏覽(25)
  • 【JavaEE】HTTP狀態(tài)碼-HTTP數(shù)據(jù)報(bào)的構(gòu)造

    【JavaEE】HTTP狀態(tài)碼-HTTP數(shù)據(jù)報(bào)的構(gòu)造

    HTTP狀態(tài)碼 HTTP數(shù)據(jù)報(bào)的構(gòu)造 c語(yǔ)言也學(xué)到了一個(gè)全局的變量errno,在一些內(nèi)存函數(shù)或者文件操作的時(shí)候,這個(gè)變量會(huì)有所變化,如果程序出錯(cuò)了,這個(gè)變量對(duì)應(yīng)的值就代表了對(duì)應(yīng)的錯(cuò)誤信息,【errno - error no(number)】,通過(guò)一些函數(shù)去解析這個(gè)錯(cuò)誤碼就可以了~ 而HTTP的狀態(tài)碼,就

    2024年02月07日
    瀏覽(21)
  • JavaEE & HTTP狀態(tài)碼 & HTTP數(shù)據(jù)報(bào)的構(gòu)造

    JavaEE & HTTP狀態(tài)碼 & HTTP數(shù)據(jù)報(bào)的構(gòu)造

    HTTP狀態(tài)碼 HTTP數(shù)據(jù)報(bào)的構(gòu)造 c語(yǔ)言也學(xué)到了一個(gè)全局的變量errno,在一些內(nèi)存函數(shù)或者文件操作的時(shí)候,這個(gè)變量會(huì)有所變化,如果程序出錯(cuò)了,這個(gè)變量對(duì)應(yīng)的值就代表了對(duì)應(yīng)的錯(cuò)誤信息,【errno - error no(number)】,通過(guò)一些函數(shù)去解析這個(gè)錯(cuò)誤碼就可以了~ 而HTTP的狀態(tài)碼,就

    2024年02月07日
    瀏覽(26)
  • Chrome/Safari 瀏覽器怎么查看網(wǎng)絡(luò)請(qǐng)求的 http 協(xié)議版本

    Chrome/Safari 瀏覽器怎么查看網(wǎng)絡(luò)請(qǐng)求的 http 協(xié)議版本

    通過(guò) Chrome 或者 Safari 瀏覽器的開(kāi)發(fā)者工具查看網(wǎng)絡(luò)請(qǐng)求后,發(fā)現(xiàn)只能看到 scheme 是 https,但是看不到 http 協(xié)議是 1.1 還是 2,亦或者是 http3 查看 http 請(qǐng)求 http 協(xié)議版本的方法是:鼠標(biāo)右鍵表頭中的任何一項(xiàng),隨后勾選上「Protocol」 隨后可以看到新增了一列 Protocol,顯示了 htt

    2024年02月15日
    瀏覽(95)
  • 【網(wǎng)絡(luò)應(yīng)用層協(xié)議】【HTTP】詳解HTTP與HTTPS、POST 請(qǐng)求與 GET請(qǐng)求 、TCP與UDP、cookie和session的區(qū)別

    目錄 1. HTTP和HTTPS的區(qū)別 2. POST 請(qǐng)求與 GET 請(qǐng)求區(qū)別 3. TCP與UDP的區(qū)別 4. cookie和session的區(qū)別

    2024年04月14日
    瀏覽(38)
  • 高效便捷構(gòu)造 Http 請(qǐng)求

    高效便捷構(gòu)造 Http 請(qǐng)求

    對(duì)于Get請(qǐng)求: 地址欄直接輸入 點(diǎn)擊收藏夾 html 中的 link script img a… form 標(biāo)簽 這里我們重點(diǎn)強(qiáng)調(diào) form 標(biāo)簽構(gòu)造的 http請(qǐng)求 使用 form 標(biāo)簽構(gòu)造http請(qǐng)求. form 的重要參數(shù): action: 構(gòu)造 http 請(qǐng)求的 URL 是什么 method:構(gòu)造 http 請(qǐng)求的方法是 GET 還是 POST(form 僅支持 GET 和 POST) input 的重要參數(shù)

    2023年04月14日
    瀏覽(23)
  • 【JavaEE】_HTTP請(qǐng)求首行

    【JavaEE】_HTTP請(qǐng)求首行

    目錄 1.?URL 2.?方法 2.1 GET方法 2.2 POST方法 2.3?GET與POST的區(qū)別 2.4 低頻使用方法 在mysql JDBC中已經(jīng)提到過(guò)URL的相關(guān)概念: 如需查看有關(guān)JDBC更多內(nèi)容,原文鏈接如下: 【MySQL】_JDBC編程-CSDN博客 URL用于描述某個(gè)資源在網(wǎng)絡(luò)上的所屬位置,數(shù)據(jù)庫(kù)也是一種資源故而在JDBC中使用URL描述

    2024年02月19日
    瀏覽(26)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包