get請求和post請求的區別
HTTP協議
什麼是協議?
協議實際上是某些人,或者某些組織提前制定好的一套規範,大家都按照這個規範來,這樣可以做到溝通無障礙。
協議就是一套規範,就是一套標準。由其他人或其他組織來負責制定的。
我說的話你能聽懂,你說的話,我也能聽懂,這說明我們之間是有一套規範的,一套協議的,這套協議就是:中國普通話協議。我們都遵守這套協議,我們之間就可以溝通無障礙。
什麼是HTTP協議?
HTTP協議:是W3C制定的一種超文字傳輸協議。(通訊協議:傳送訊息的模板提前被制定好。)
W3C:
全球資訊網聯盟組織
負責制定標準的:HTTP HTML4.0 HTML5 XML DOM等規範都是W3C制定的。
全球資訊網之父:蒂姆·伯納斯·李
什麼是超文字?
超文字說的就是:不是普通文字,比如流媒體:聲音、視訊、圖片等。
HTTP協議支援:不但可以傳送普通字串,同樣支援傳遞聲音、視訊、圖片等流媒體資訊。
這種協議遊走在B和S之間。B向S發資料要遵循HTTP協議。S向B發資料同樣需要遵循HTTP協議。這樣B和S才能解耦合。
什麼是解耦合?
B不依賴S。
S也不依賴B。
耦合是物件之間有依賴關係,減少耦合,可以擴充套件軟體功能
B/S表示:B/S結構的系統(瀏覽器訪問WEB伺服器的系統)
瀏覽器 向 WEB伺服器傳送資料,叫做:請求(request)
WEB伺服器 向 瀏覽器傳送資料,叫做:響應(response)
HTTP協議包括:
請求協議
瀏覽器 向 WEB伺服器傳送資料的時候,這個傳送的資料需要遵循一套標準,這套標準中規定了傳送的資料具體格式。
響應協議
WEB伺服器 向 瀏覽器傳送資料的時候,這個傳送的資料需要遵循一套標準,這套標準中規定了傳送的資料具體格式。
HTTP協議就是提前制定好的一種訊息模板。
不管你是哪個品牌的瀏覽器,都是這麼發。
不管你是哪個品牌的WEB伺服器,都是這麼發。
FF瀏覽器 可以向 Tomcat傳送請求,也可以向Jetty伺服器傳送請求。瀏覽器不依賴具體的伺服器品牌。
WEB伺服器也不依賴具體的瀏覽器品牌。可以是FF瀏覽器,也可以是Chrome瀏覽器,可以是IE,都行。
HTTP的請求協議(B --> S)
HTTP的請求協議包括:4部分
- 請求行
- 請求頭
- 空白行
- 請求體
GET /servlet05/getServlet?username=lucy&userpwd=1111 HTTP/1.1 請求行
Host: localhost:8080 請求頭
Connection: keep-alive
sec-ch-ua: “Google Chrome”;v=“95”, “Chromium”;v=“95”, “;Not A Brand”;v=“99”
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: “Windows”
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54
Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer:
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
空白行
請求體
HTTP請求協議的具體報文:POST請求
POST /servlet05/postServlet HTTP/1.1 請求行
Host: localhost:8080 請求頭
Connection: keep-alive
Content-Length: 25
Cache-Control: max-age=0
sec-ch-ua: “Google Chrome”;v=“95”, “Chromium”;v=“95”, “;Not A Brand”;v=“99”
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: “Windows”
Upgrade-Insecure-Requests: 1
Origin:
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer:
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
空白行
username=lisi&userpwd=123 請求體
請求行
包括三部分:
第一部分:請求方式(7種)
get(常用的)
post(常用的)
delete
put
head
options
trace
第二部分:URI
什麼是URI? 統一資源識別符號。代表網路中某個資源的名字。但是通過URI是無法定位資源的。
什麼是URL?統一資源定位符。代表網路中某個資源,同時,通過URL是可以定位到該資源的。
URI和URL什麼關係,有什麼區別?
URL包括URI
這是URL。
/servlet05/index.html 這是URI。
第三部分:HTTP協議版本號
請求頭
請求的主機
主機的埠
瀏覽器資訊
平臺資訊
cookie等資訊
…
空白行
空白行是用來區分“請求頭”和“請求體”
請求體
向伺服器傳送的具體資料。
HTTP的響應協議(S --> B)
HTTP的響應協議包括:4部分
狀態行
響應頭
空白行
響應體
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70011332/viewspace-2878952/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 都2020年了,還理不清GET請求和POST請求區別?
- uni-app的POST請求和GET請求APP
- vue 發起get請求和post請求Vue
- POST與GET請求區別
- get與post的請求區別
- http請求之get和post的區別HTTP
- get和post請求的區別(面試)面試
- http請求中get和post方法的區別HTTP
- GET和POST兩種基本請求方法的區別
- ajax 請求的時候 get 和 post 方式的區別?
- 淺談HTTP中GET和POST請求方式的區別HTTP
- SpringMVC中如何傳送GET請求、POST請求、PUT請求、DELETE請求。SpringMVCdelete
- 簡述六種請求方法,get、head、put、delete、post、options區別delete
- Java Http Get Post 請求工具類JavaHTTP
- go對get、post請求封裝Go封裝
- java傳送GET和post請求Java
- get,post URL加字尾請求
- axios 發get,post 請求小結iOS
- 前後端資料互動(八)——請求方法 GET 和 POST 區別後端
- ajax的post或者get伺服器請求伺服器
- file_get_contents傳送post請求
- 介面請求(get、post、head等)詳解
- 介面請求 (get、post、head 等) 詳解
- httprequest- post- get -傳送請求HTTP
- Linux curl 命令模擬 POST/GET 請求Linux
- Python中get、post請求詳解(HTTP請求頭、狀態碼)PythonHTTP
- vue axios資料請求get、post方法的使用VueiOS
- 4.爬蟲 requests庫講解 GET請求 POST請求 響應爬蟲
- RestTemplate exchange GET POST請求傳引數DEMOREST
- 優雅地使用GET和POST請求方法
- postman(二):使用postman傳送get or post請求Postman
- python3 實現 get 和 post 請求Python
- Http請求get與post請求方式的各種相關面試總結HTTP面試
- 前端常見的請求資料彙總(GET POST)前端
- 解析HTTP協議六種請求方法,get,head,put,delete,post有什麼區別HTTP協議delete
- GET和POST方式請求API介面資料返回API
- cURL實現傳送Get和Post請求(PHP)PHP
- 原生js實現Ajax請求,包含get和postJS