前言:“不是井里沒有水洒敏,而是你挖的不夠深龄恋;不是成功來的慢,而是你努力的不夠狠凶伙」希”
你好,我是夢陽辰函荣!一起學(xué)習(xí)起來吧显押!
文章目錄
01.HTTP概述
02HTTP協(xié)議的組成
03.HTTPS協(xié)議
01.HTTP概述
HTTP協(xié)議(HyperText Transfer Protocol,超文本傳輸協(xié)議)是因特網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)傳輸協(xié)議傻挂,所有的WWW文件都必須遵守這個(gè)標(biāo)準(zhǔn)乘碑。是一個(gè)基于請求與響應(yīng)的模式的,無狀態(tài)的網(wǎng)絡(luò)協(xié)議金拒。是瀏覽器和服務(wù)器間最常用的通訊協(xié)議兽肤。HTTP協(xié)議是瀏覽器與服務(wù)期間的數(shù)據(jù)傳遞格式的一種約定,瀏覽器與服務(wù)器只要都遵循這個(gè)約定绪抛,就可以進(jìn)行數(shù)據(jù)通訊了资铡。
HTTP是一個(gè)基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù)(HTML 文件, 圖片文件, 查詢結(jié)果等)。設(shè)計(jì)HTTP的初衷就是為了提供一種發(fā)布和接受HTML頁面的方法幢码。
1.請求與響應(yīng)
由瀏覽器向服務(wù)器發(fā)送數(shù)據(jù)笤休,稱為請求(request)。由服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)症副,則成為Response宛官。
2.HTTP版本
客戶端若要向服務(wù)器發(fā)出請求,必須首先在他們之間創(chuàng)建一個(gè)TCP(Transfer Control Protocal,傳輸控制協(xié)議)連接瓦糕。而當(dāng)客戶端與服務(wù)器通訊結(jié)束后,TCP連接將被關(guān)閉腋么。而這個(gè)鏈接就是基于HTTP協(xié)議的咕娄。
HTTP1.1還允許客戶端不用等待上一次請求結(jié)果返回,就可以發(fā)出下一次請求珊擂,但服務(wù)器端必須按照接收到客戶端請求的先后順序依次回送響應(yīng)結(jié)果圣勒。為了防止服務(wù)器主動將TCP連接關(guān)閉,在每一個(gè)請求中都攜帶了一個(gè)參數(shù)Connectiong,用于告訴服務(wù)器是否關(guān)閉連接摧扇。由客戶端發(fā)送了關(guān)閉TCP連接時(shí)圣贸,服務(wù)器才會將TCP連接關(guān)閉。
02HTTP協(xié)議的組成
HTTP協(xié)議包括兩部分:請求協(xié)議與響應(yīng)協(xié)議扛稽,分別用于制定請求與響應(yīng)信息的格式吁峻。
1.請求協(xié)議
在學(xué)習(xí)請求協(xié)議前了解一下URL和URI.
URL:(Uniform Resource Locator)統(tǒng)一資源定位符,是互聯(lián)網(wǎng)上標(biāo)準(zhǔn)資源的地址∮煤可以在全群范圍內(nèi)唯一的確定一個(gè)資源矮慕。
URI:統(tǒng)一資源標(biāo)識符,用于標(biāo)識一個(gè)資源的名稱啄骇。通過這種名稱命名的資源可以被互聯(lián)網(wǎng)定位和訪問痴鳄。
2.響應(yīng)協(xié)議
3.狀態(tài)碼
當(dāng)進(jìn)行web應(yīng)用訪問時(shí),經(jīng)常會看到一些4開頭或5開頭的提示信息頁面缸夹。這些就是HTTP協(xié)議制定的痪寻。讓服務(wù)器傳遞給瀏覽器的狀態(tài)碼。表示服務(wù)器對當(dāng)前請求的處理狀態(tài)虽惭。
2開頭:表示請求與響應(yīng)成功橡类。常見的狀態(tài)碼200
4開頭:表示請求錯(cuò)誤。其中常見的狀態(tài)碼是404
5開頭:表示服務(wù)端錯(cuò)誤趟妥。常見的狀態(tài)碼:500
4.GET和POST請求方式
HTTP協(xié)議規(guī)定猫态,瀏覽器向服務(wù)器發(fā)送數(shù)據(jù)提交請求的提交方式有8種。但GET與POST請求最常用披摄。
GET請求
由于GET請求會將請求的所攜帶的參數(shù)作為請求URL中的一部分出現(xiàn)亲雪,所以請求參數(shù)會顯示在地址欄。這導(dǎo)致了GET的三點(diǎn)不足疚膊。
參數(shù)值只能是字符串义辕,而不能是其他類型。
可以攜帶的數(shù)據(jù)量小寓盗。
數(shù)據(jù)安全性低灌砖。
但是:GET請求有個(gè)很重要的特征:客戶端一旦接收到“服務(wù)器向GET請求發(fā)送的響應(yīng)”后,瀏覽器會自動緩存響應(yīng)傀蚌。當(dāng)客戶端再次進(jìn)行相同請求提交時(shí)基显,將直接讀取本地瀏覽器緩存中數(shù)據(jù),而不再向服務(wù)端真正發(fā)送數(shù)據(jù)善炫。讓用戶感覺服務(wù)端的響應(yīng)很快撩幽,提升用戶體驗(yàn),減輕了服務(wù)器壓力箩艺。
第一:GET請求的目的一般是客戶端要從服務(wù)端下載資源窜醉。發(fā)送相同的請求就代表要下載相同的資源。如果已經(jīng)被下載了艺谆,就無需再下載了榨惰。
POST請求的目的一般是客戶端要向服務(wù)端上傳資源。對于向服務(wù)端上傳資源后相應(yīng)的結(jié)果静汤,瀏覽器是無需緩存的琅催。
第二:兩種提交方式的比較難易程度是不同的居凶。
GET提交方式的請求只包含請求行,請求頭與空行三部分恢暖。所以第二次請求與前一次請求是否相同排监,瀏覽器很好做出比較。
POST提交方式所包含的數(shù)據(jù)量比較大杰捂,主要體現(xiàn)在請求正文內(nèi)容多舆床。對于POST提交,是否是相同請求的提交不好比較嫁佳。
03.HTTPS協(xié)議
超文本傳輸安全協(xié)議(英語:Hypertext Transfer Protocol Secure挨队,縮寫:HTTPS,常稱為HTTP over TLS蒿往,HTTP over SSL或HTTP Secure)是一種網(wǎng)絡(luò)安全傳輸協(xié)議盛垦。具體介紹以前先來介紹一下以前常見的HTTP,HTTP就是我們平時(shí)瀏覽網(wǎng)頁時(shí)候使用的一種協(xié)議瓤漏。HTTP協(xié)議傳輸?shù)臄?shù)據(jù)都是未加密的腾夯,也就是明文,因此使用HTTP協(xié)議傳輸隱私信息非常不安全蔬充。HTTP使用80端口通訊蝶俱,而HTTPS占用443端口通訊。在計(jì)算機(jī)網(wǎng)絡(luò)上饥漫,HTTPS經(jīng)由超文本傳輸協(xié)議(HTTP)進(jìn)行通信榨呆,但利用SSL/TLS來加密數(shù)據(jù)包。HTTPS開發(fā)的主要目的庸队,是提供對網(wǎng)絡(luò)服務(wù)器的身份認(rèn)證积蜻,保護(hù)交換數(shù)據(jù)的隱私與完整性。這個(gè)協(xié)議由網(wǎng)景公司(Netscape)在1994年首次提出彻消,隨后擴(kuò)展到互聯(lián)網(wǎng)上竿拆。
不走心的努力,都是在敷衍自己!你要堅(jiān)信所有現(xiàn)在越不過去的坎宾尚,將來總有一天會當(dāng)成笑話說出來丙笋。
關(guān)注公眾號【輕松玩編程】回復(fù)關(guān)鍵字“電子書”,“計(jì)算機(jī)資源”央勒,“Java從入門到進(jìn)階”,”JavaScript教程“澳化,“算法”,“Python學(xué)習(xí)資源”,“人工智能”等即可獲取學(xué)習(xí)資源裹驰。