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

【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS

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

【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https

1.HTTP請(qǐng)求的構(gòu)造

常見(jiàn)的構(gòu)造HTTP 請(qǐng)求的方式有以下幾種:

  1. 直接通過(guò)瀏覽器地址欄, 輸入一個(gè) URL 就可以構(gòu)造出一個(gè) GET 請(qǐng)求.
  2. 直接點(diǎn)擊收藏夾, 得到的也是 GET 請(qǐng)求.
  3. HTML 中的一些特殊標(biāo)簽也會(huì)觸發(fā) GET 請(qǐng)求, 如: link, script, img, a…
  4. 還可以通過(guò)form表單標(biāo)簽來(lái)實(shí)現(xiàn) GET/POST 請(qǐng)求的構(gòu)造.
  5. 通過(guò) JS 中的 ajax 實(shí)現(xiàn)各種請(qǐng)求的構(gòu)造.

1.1 from表單請(qǐng)求構(gòu)造

使用 form 表單標(biāo)簽構(gòu)造請(qǐng)求, action 屬性中的 URL 指的是接收請(qǐng)求的服務(wù)器地址.
基本格式:

<form action="URL" method="http方法類(lèi)型"></form>

例如使用input標(biāo)簽來(lái)構(gòu)造HTTP請(qǐng)求:

<form action="https://www.baidu.com" method="get">
        <input type="text" name="StudentName">
        <input type="submit" value="提交">
</form>

上述代碼中,input type = "submit"構(gòu)造了一個(gè)特殊的提交按鈕,value屬性描述了按鈕中的文本.點(diǎn)擊這個(gè)按鈕就會(huì)觸發(fā)該from表單的提交操作.也就是構(gòu)造http請(qǐng)求發(fā)送給服務(wù)器.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
輸入名字,點(diǎn)擊提交之后:
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
我們可以看到,我們構(gòu)造的這個(gè)請(qǐng)求,百度的服務(wù)器沒(méi)有做特別的處理,仍然返回的是百度主頁(yè).
打開(kāi)fiddler,可以看到:
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
接下來(lái)我們構(gòu)造一個(gè)pose請(qǐng)求:

<form action="https://www.baidu.com" method="pose">
        <input type="text" name="StudentName">
        <input type="submit" value="提交">
    </form>

【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
對(duì)于from構(gòu)造的post請(qǐng)求來(lái)說(shuō),body里的數(shù)據(jù)格式就和query string是非常相似的.也是鍵值對(duì)結(jié)構(gòu).鍵值對(duì)之間使用&來(lái)分割.鍵和值之間使用=來(lái)分割.

值得注意的是,from標(biāo)簽只能構(gòu)造GET和POST,無(wú)法構(gòu)造PUT,DELET,OPTIONS等方法的請(qǐng)求.

1.2 ajax構(gòu)造HTTP請(qǐng)求

ajax即Asynchronous Javascript And XML(異步JavaScript和XML)也是瀏覽器提供的一種,通過(guò)js構(gòu)造HTTP請(qǐng)求的方式.它的功能比f(wàn)rom更強(qiáng).

關(guān)于同步和異步的理解:
A等待B:
同步:A始終盯著B(niǎo),A負(fù)責(zé)關(guān)注B啥時(shí)候就緒.
異步:A不盯著B(niǎo),B就緒之后主動(dòng)通知A.(常見(jiàn))

html中,通過(guò)ajax發(fā)起http請(qǐng)求,就屬于是"異步"的方式.這一行代碼執(zhí)行"發(fā)送請(qǐng)求"操作之后,不必等待服務(wù)器響應(yīng)回來(lái),就立即往下執(zhí)行.當(dāng)服務(wù)器的響應(yīng)回來(lái)之后,再由瀏覽器通知到我們的代碼中.

代碼中使用ajax:

  1. js提供ajax的api,但是原生api不好用(此處不做介紹)
  2. jQuery提供的ajax,api針對(duì)原生api的封裝.較為簡(jiǎn)單.

第一步, 引入 jQuery, 搜索 jQuery cdn, 找到一個(gè) jQuery cdn 文件的 URL, 我們選擇 min 版本的, 比如我這里得到的是 https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.min.js.
第二步, 使用 $ 對(duì)象中的 ajax 函數(shù), 傳入一個(gè) js 對(duì)象作為參數(shù), 這個(gè)對(duì)象里面需要包含 HTTP 方法類(lèi)型 type, 請(qǐng)求的 url, 請(qǐng)求成功后該做什么 success, 失敗后該做什么 error

<!-- 引入query -->
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
    <script>
        $.ajax({
            type:'get',
            url:'https://www.baidu.com?studentName=zhangsan',
            // 此處的success就聲明了一個(gè)回調(diào)函數(shù),就會(huì)在服務(wù)器響應(yīng)返回到瀏覽器的時(shí)候觸發(fā)該回調(diào).
            //此處的 回調(diào) 體現(xiàn)了 異步
            success:function(data){
                console.log("當(dāng)服務(wù)器返回的響應(yīng)到達(dá)瀏覽器之后,瀏覽器觸發(fā)該回調(diào),通知到我們的代碼中");
            }
        });
        console.log("瀏覽器立即往下執(zhí)行后續(xù)代碼");
    </script>

但是運(yùn)行后我們可以看到:
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
該代碼直接執(zhí)行只能看到構(gòu)造的請(qǐng)求,無(wú)法獲取到正確的響應(yīng).因?yàn)槲覀儼l(fā)送請(qǐng)求給百度服務(wù)器,百度的服務(wù)器沒(méi)有處理我們的請(qǐng)求.

構(gòu)造請(qǐng)求的順序是從上到下的.但是收到響應(yīng)的順序/觸發(fā)回調(diào)的順序不確定.

ajax 相比于 form 標(biāo)簽功能更強(qiáng), 構(gòu)造請(qǐng)求更加靈活, form 只支持 get 和 post 請(qǐng)求的構(gòu)造, 而 ajax 還支持 put, delete等, ajax 還可以靈活的設(shè)置 header 和body.

1.3 Postman的使用

Postman是谷歌的一款接口測(cè)試插件, 它使用簡(jiǎn)單, 支持用例管理, 支持get, post, 文件上傳, 響應(yīng)驗(yàn)證, 變量管理, 環(huán)境參數(shù)管理等功能, 可以批量運(yùn)行, 并支持用例導(dǎo)出, 導(dǎo)入.
Postman下載(官網(wǎng))
下載好后可去’使用郵箱去注冊(cè)一個(gè)賬號(hào)進(jìn)行登錄
進(jìn)入后創(chuàng)建一個(gè)工作空間:
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
創(chuàng)建好后,再點(diǎn)擊+創(chuàng)建一個(gè)標(biāo)簽頁(yè):
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
熟悉頁(yè)面:
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
除此之外,Postman還可以生成構(gòu)造請(qǐng)求的diamante,方便在我們自己的代碼中集成.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
在此可以選擇使用哪種語(yǔ)言構(gòu)造HTTP請(qǐng)求.

2. HTTPS

2.1 什么是HTTPS?

在網(wǎng)絡(luò)傳輸過(guò)程中, 存在著運(yùn)營(yíng)商劫持和一些黑客入侵這樣的危險(xiǎn), 在之前只有HTTP的明文傳輸數(shù)據(jù)環(huán)境下, 這樣的問(wèn)題是有些泛濫的, 這種情況下就不清楚在中間傳輸過(guò)程中就被哪一服務(wù)器將數(shù)據(jù)篡改了, 所以在后來(lái)就引入了HTTPS.

HTTPS (全稱(chēng): Hyper Text Transfer Protocol over Secure Socket Layer), 就是 HTTP + 安全層(SSL), 是以安全為目標(biāo)的 HTTP 通道, 簡(jiǎn)單講就是 HTT P的安全版本, 即 HTTP 下加入 SSL 層, HTTPS 的安全基礎(chǔ)是 SSL.

HTTPS 和 HTTP 一樣, 都是應(yīng)用層協(xié)議, HTTPS 相比于 HTTP 多了一個(gè)加密的功能, 就是在 HTTP 基礎(chǔ)上引入了SSL/TLS 加密機(jī)制, 該功能作用不是防止數(shù)據(jù)被窺察, 而是為了防止數(shù)據(jù)被篡改, HTTP 是明文傳輸, HTTPS 是密文傳輸, HTTPS 可以更好地保護(hù)數(shù)據(jù)的傳輸.

如何理解這里的安全?

安全這個(gè)概念只是相對(duì)而言, “道高一尺, 魔高一丈”, 不管安全措施如何完善, 相信總是有更厲害的大佬有針對(duì)攻擊辦法, 但我們認(rèn)為, 網(wǎng)絡(luò)傳輸中, 只要黑客解密的成本超過(guò)了數(shù)據(jù)本身的價(jià)值, 就認(rèn)為是安全的了.

這里有幾個(gè)專(zhuān)有名詞需要了解一下

明文: 傳輸?shù)脑紨?shù)據(jù).
密文: 原始數(shù)據(jù)被加密后的數(shù)據(jù).
密鑰: 可以將明文轉(zhuǎn)換成密文, 也可以將密文轉(zhuǎn)換為明文的 “鑰匙”.

2.2 HTTPS中的加密機(jī)制(SSL/TLS)

HTTPS 引入的加密層, 稱(chēng)為 SSL 或 TLS, 在 SSL 中加密的機(jī)制主要有兩種:

  1. 對(duì)稱(chēng)加密
  2. 非對(duì)稱(chēng)加密

SSL/TLS 部分其實(shí)并不是只在 HTTPS 中使用, 在其他的場(chǎng)景中也會(huì)用到(比如 SSH 協(xié)議, JDBC 等).

2.2.1 HTTP的安全問(wèn)題

HTTP 是明文傳輸?shù)? 當(dāng)有黑客或者運(yùn)營(yíng)商從中作梗, 就可以直接篡改客戶(hù)端和服務(wù)器之間傳輸?shù)臄?shù)據(jù), 此時(shí)就沒(méi)有什么安全性可言, 客戶(hù)端和服務(wù)器拿到什么樣的數(shù)據(jù)完全就是黑客說(shuō)了算了.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
也就是說(shuō), 只要網(wǎng)絡(luò)上的數(shù)據(jù)是明文傳輸?shù)? 都是存在被劫持, 被篡改的風(fēng)險(xiǎn)的, 所以為了能夠改善這種問(wèn)題, 就引入了加密, HTTPS 就應(yīng)運(yùn)而生了.

2.2.2 對(duì)稱(chēng)加密

對(duì)稱(chēng)加密就是客戶(hù)端和服務(wù)器使用相同的密鑰對(duì)密文進(jìn)行加密與解密, 密鑰就可以認(rèn)為是一串?dāng)?shù)字/字符串, 加密就是把明文 (HTTPS 中就是針對(duì) HTTP 的各種 header 和 body) 和密鑰字符串進(jìn)行一系列的數(shù)學(xué)變換.

a(明文) + key = b(密文), 這是加密的過(guò)程

b(密文) + key = a(明文), 這是解密的過(guò)程
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
要注意, 這里密文傳輸安全的前提是黑客并不知道密鑰是什么, 這就要求不同的客戶(hù)端使用的是不同的密鑰才行, 因?yàn)槿绻煌蛻?hù)端使用的是相同的密鑰, 那么黑客只需要自己?jiǎn)?dòng)一個(gè)客戶(hù)端就能拿到密鑰, 成本不高, 就沒(méi)什么安全可言了.

所以, 不同的客戶(hù)端需要有不同的密鑰, 這個(gè)密鑰要么由服務(wù)器生成, 要么由客戶(hù)端生成, 假設(shè)我們這里是由客戶(hù)端生成密鑰, 客戶(hù)端生成密鑰后就需要在傳輸數(shù)據(jù)之前需要先將密鑰發(fā)送給服務(wù)器, 即如下過(guò)程:

【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
這樣不同的客戶(hù)端就使用了不同的對(duì)稱(chēng)密鑰來(lái)對(duì)數(shù)據(jù)進(jìn)行加密, 那么當(dāng)客戶(hù)端生成對(duì)稱(chēng)密鑰后, 先將對(duì)稱(chēng)密鑰傳輸?shù)椒?wù)器, 服務(wù)器拿到密鑰后再進(jìn)行業(yè)務(wù)數(shù)據(jù)的傳輸, 之后就使用從客戶(hù)端拿到的密鑰進(jìn)行數(shù)據(jù)的加密和解密了.
但此時(shí)還是有問(wèn)題的, 一開(kāi)始密鑰傳輸?shù)陌踩珕?wèn)題如何得到保障呢? 在此時(shí)的場(chǎng)景下, 密鑰剛剛生成, 也就是服務(wù)器還不知道密鑰是什么, 所以這次密鑰的傳輸還是只能使用明文傳輸, 很容易就被黑客攔截獲取了, 這樣的加密也就形同虛設(shè)了, 所以就引入了下面的 “非對(duì)稱(chēng)加密”.

2.2.3 非對(duì)稱(chēng)加密

為了讓密鑰安全的傳輸?shù)椒?wù)器, 就需要對(duì)密鑰也進(jìn)行加密.

對(duì)于非對(duì)稱(chēng)加密, 它擁有兩個(gè)密鑰, 一個(gè)公鑰和一個(gè)私鑰, 其中公鑰 “人人” 都能獲取到, 而私鑰是構(gòu)造私鑰的 “人” 才知道.

相當(dāng)于我們現(xiàn)實(shí)生活中的鎖與鑰匙, 而這個(gè)鎖就相當(dāng)于公鑰, 鑰匙就相當(dāng)于私鑰.

其中公鑰是用來(lái)加密的, 而私鑰是用來(lái)解密的.

明文 + 公鑰 = 密文
密文 + 私鑰 = 明文

此時(shí), 就可以使用非對(duì)稱(chēng)加密了, 首先客戶(hù)端會(huì)向服務(wù)器詢(xún)問(wèn)服務(wù)器的公鑰是什么, 然后服務(wù)器會(huì)向客戶(hù)端發(fā)送一個(gè)公鑰, 客戶(hù)端收到公鑰后會(huì)使用這個(gè)公鑰對(duì)客戶(hù)端構(gòu)造的對(duì)稱(chēng)密鑰進(jìn)行加密, 然后會(huì)把加密后的對(duì)稱(chēng)密鑰傳輸給服務(wù)器, 服務(wù)器使用私鑰解密得到客戶(hù)端的對(duì)稱(chēng)密鑰, 之后的業(yè)務(wù)數(shù)據(jù)就可以使用這個(gè)對(duì)稱(chēng)密鑰進(jìn)行加密和解密了(對(duì)稱(chēng)加密).
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https注意的是,非對(duì)稱(chēng)加密只是用來(lái)傳輸密鑰的,一旦對(duì)稱(chēng)密鑰到達(dá)服務(wù)器之后,后續(xù)的傳輸都是使用對(duì)稱(chēng)密鑰來(lái)加密和解密.
那么為什么有了非對(duì)稱(chēng)加密,還要繼續(xù)使用對(duì)稱(chēng)加密呢?
這是因?yàn)槭褂?strong>對(duì)稱(chēng)加密傳輸?shù)乃俣仁潜容^快的,而非對(duì)稱(chēng)加密速度就慢很多.實(shí)際場(chǎng)景會(huì)要求盡可能提高整體的速度,使用對(duì)稱(chēng)加密更為合適.

2.2.3 中間人問(wèn)題

有了上面的非對(duì)稱(chēng)加密, 數(shù)據(jù)傳輸?shù)陌踩鋵?shí)還是存在問(wèn)題的, 可能會(huì)存在 “中間人” 問(wèn)題, 這個(gè)中間人對(duì)于服務(wù)器會(huì)偽裝成 "客戶(hù)端"的身份, 對(duì)于客戶(hù)端, 中間人就會(huì)偽裝成 “服務(wù)器”;

當(dāng)服務(wù)器發(fā)送自己的公鑰給客戶(hù)端,中間人也會(huì)生成一對(duì)公鑰與私鑰,中間人就把服務(wù)器的公鑰換成自己的公鑰,然后客戶(hù)端使用中間人的公鑰加密對(duì)稱(chēng)密鑰,然后發(fā)送給服務(wù)器,此時(shí)中間人就可以通過(guò)自己的私鑰獲得對(duì)稱(chēng)密鑰,獲取密鑰后中間人會(huì)將密鑰使用服務(wù)器的公鑰在加密發(fā)送給服務(wù)器.

此時(shí)數(shù)據(jù)傳輸又變成"透明"的了,在之后的對(duì)稱(chēng)加密傳輸過(guò)程中,中間人已經(jīng)知道了對(duì)稱(chēng)密鑰,就可以將客戶(hù)端請(qǐng)求/服務(wù)器響應(yīng)的密文數(shù)據(jù)解密得到原始數(shù)據(jù),中間人就可以針對(duì)原始數(shù)據(jù)進(jìn)行篡改,然后再加密發(fā)送,這樣中間人就能夠拿到客戶(hù)端和服務(wù)器之間的傳輸數(shù)據(jù),可以進(jìn)行查看和篡改.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https

2.2.5 證書(shū)

中間人問(wèn)題的解決方案是引入一個(gè)第三方工信機(jī)構(gòu), 現(xiàn)在的服務(wù)器 (網(wǎng)站) 一般在設(shè)立之初, 就需要去專(zhuān)門(mén)的認(rèn)證機(jī)構(gòu), 申請(qǐng)證書(shū), 服務(wù)器先提供資質(zhì)證明給工信機(jī)構(gòu), 工信機(jī)構(gòu)通過(guò)審核后, 會(huì)給服務(wù)器發(fā)送一個(gè)證書(shū), 該證書(shū)不是普通的證書(shū), 里面含有一些校驗(yàn)機(jī)制 (校驗(yàn)的過(guò)程類(lèi)似 TCP/UDP 的校驗(yàn)和), 然后服務(wù)器會(huì)把自己的公鑰放入證書(shū)中, 客戶(hù)端也不再詢(xún)問(wèn)公鑰, 而是詢(xún)問(wèn)服務(wù)器證書(shū), 得到證書(shū)后會(huì)去查該證書(shū)是否合法, 如果合法才會(huì)使用服務(wù)器證書(shū)中的公鑰去進(jìn)行對(duì)密文請(qǐng)求與密鑰的加密, 并發(fā)送給服務(wù)器, 如果不合法瀏覽器就會(huì)彈窗警告.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
這個(gè)過(guò)程就類(lèi)似于我們使用的身份證來(lái)證明身份, 派出所就是第三方的認(rèn)證機(jī)構(gòu), 身份證是無(wú)法被其他地方生成或者篡改的, 其他人就可以通過(guò)身份證來(lái)辨識(shí)我們的身份.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
那么客戶(hù)端是如何對(duì)證書(shū)進(jìn)行驗(yàn)證的呢?
實(shí)際上, 操作系統(tǒng)是會(huì)內(nèi)置一些工信機(jī)構(gòu)的信息(包含工信機(jī)構(gòu)的公鑰)的.

首先我們需要知道證書(shū)上面會(huì)有一個(gè)特定的字段, 叫做證書(shū)的簽名, 這個(gè)簽名是一個(gè)被加密的字符串, 是通過(guò)對(duì)證書(shū)中所有的屬性, 計(jì)算出來(lái)的一個(gè)校驗(yàn)和(簽名), 再由頒布證書(shū)的工信機(jī)構(gòu)使用它的私鑰對(duì)這個(gè)簽名進(jìn)行加密.
【JavaEE初階】HTTP請(qǐng)求的構(gòu)造及HTTPS,JavaEE初階,http,java-ee,https
證書(shū)
字段1:abc
字段2:cde
字段3:okm
公鑰:0x112233

簽名:dgiuwdhqduhouiqdhq

此處的簽名就是被加密的字符串.
客戶(hù)端就可以使用認(rèn)證機(jī)構(gòu)提供的公鑰進(jìn)行解密,解密之后,得到的結(jié)果相當(dāng)于是一個(gè)hash1值.(類(lèi)似于tcp udp里的校驗(yàn)和 根據(jù)證書(shū)的其他字段綜合計(jì)算出來(lái)的結(jié)果)
客戶(hù)端可以使用同樣的hash算法,針對(duì)其他字段再算一次hash值,得到hash2.
看看hash1(從簽名中解出來(lái)的)和hash2(客戶(hù)端自己算的)值是否相同.相同就是沒(méi)有被篡改過(guò)的.

黑客即使把證書(shū)中服務(wù)器的公鑰篡改替換成自己的公鑰, 然后黑客再針對(duì)證書(shū)中的各個(gè)屬性, 重新計(jì)算簽名, 下一步, 黑客就需要把簽名重新加密, 這里黑客就無(wú)能為力了, 因?yàn)橄胍用? 黑客就必須知道工信機(jī)構(gòu)的私鑰, 顯然, 黑客是無(wú)法知道的.文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-607030.html

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

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(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)文章

  • 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日
    瀏覽(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日
    瀏覽(20)
  • 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)
  • 【JavaSE專(zhuān)欄91】Java如何主動(dòng)發(fā)起Http、Https請(qǐng)求?

    【JavaSE專(zhuān)欄91】Java如何主動(dòng)發(fā)起Http、Https請(qǐng)求?

    作者主頁(yè) :Designer 小鄭 作者簡(jiǎn)介 :3年JAVA全棧開(kāi)發(fā)經(jīng)驗(yàn),專(zhuān)注JAVA技術(shù)、系統(tǒng)定制、遠(yuǎn)程指導(dǎo),致力于企業(yè)數(shù)字化轉(zhuǎn)型,CSDN學(xué)院、藍(lán)橋云課認(rèn)證講師。 主打方向 :Vue、SpringBoot、微信小程序 本文講解了如何使用 Java 發(fā)起 Http 請(qǐng)求,并給出了樣例代碼,HTTP 是一種用于在 Web 瀏

    2024年02月09日
    瀏覽(17)
  • java使用hutool工具類(lèi)發(fā)送http或者h(yuǎn)ttps請(qǐng)求太香啦

    我們使用java內(nèi)置的http工具實(shí)現(xiàn)遠(yuǎn)程調(diào)用的時(shí)候,都是用try catch包一堆代碼,巨難受,今天看見(jiàn)有人使用hutool工具類(lèi)那是天簡(jiǎn)單了呀,具體操作如下: 1,引入依賴(lài) 2, 如果不需要設(shè)置其他什么頭信息,代碼: 如果是https請(qǐng)求直接換url里面的http就行 返回信息格式: {\\\"code\\\":200

    2024年02月14日
    瀏覽(24)
  • 【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請(qǐng)求

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

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

    2024年02月12日
    瀏覽(28)
  • 高效便捷構(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日
    瀏覽(22)
  • 【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è):良辰針不戳 ??所屬專(zhuān)欄:javaEE初階 ??勵(lì)志語(yǔ)句:生活也許會(huì)讓我們遍體鱗傷,但最終這些傷口會(huì)成為我們一輩子的財(cái)富。 ??期待大家三連,關(guān)注,點(diǎn)贊,收藏。

    2024年02月06日
    瀏覽(25)
  • 【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)
  • 【JavaEE】_HTTP請(qǐng)求報(bào)頭header

    【JavaEE】_HTTP請(qǐng)求報(bào)頭header

    目錄 1. Host 2. Content-Length與Content-Type 2.1 Content-Length 2.2 Content-Type 3. User-Agent(UA) 4. Referer 5. Cookie header的整體格式是“鍵值對(duì)”結(jié)構(gòu),一行是一個(gè)鍵值對(duì),這些鍵值對(duì)都是HTTP定義好的、有特殊含義的。 常見(jiàn)的報(bào)頭種類(lèi)有: Host表示訪問(wèn)的服務(wù)器主機(jī)的地址與端口號(hào)(端口號(hào)可

    2024年02月20日
    瀏覽(20)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包