【計算機網絡學習之路】HTTP請求

目錄

前言

HTTP請求報文格式

一. 請求行

HTTP請求方法

GET和POST的區別

URL

二. 請求頭

常見的Header

常見的額請求體數據類型

三. 請求體

結束語


前言

HTTP是應用層的一個協議。實際我們訪問一個網頁,都會像該網頁的服務器發送HTTP請求,服務器解析HTTP請求,返回HTTP響應。如此就是我們獲取資源或者上傳資源的原理

HTTP請求報文格式

圖片來自網絡

HTTP請求報頭總體有四部分:

  • 請求行:有三部分:請求方法URL協議版本。彼此用空格分隔
  • 請求頭:KV形式的輔助信息
  • 空行:分隔報頭(請求行+請求頭)有效載荷(請求體);由回車符,換行符組成,即\r\n
  • 請求體:請求發送時攜帶的數據。數據類型Content-Type的值

一. 請求行

HTTP請求方法

方法說明支持的HTTP協議版本
GET獲取資源1.0,1.1
POST傳輸實體主體(提交信息)1.0,1.1
PUT傳輸文件1.0,1.1
HEAD獲得報文首部1.0,1.1
DELETE刪除文件1.0,1.1
OPTIONS詢問支持的方法1.1
TRACE追蹤路徑1.1
CONNECT要求用隧道協議連接代理1.1
LINK建立和資源之間的聯系1.0
UNLINE斷開連接關系1.0

其中,最常用的是GETPOST

GET和POST的區別

雖然GET主要作用是獲取資源,但也可以提交數據。

兩者提交數據的區別是

GET提交的數據會放到url中,以field(字段)= value的形式,置于URL之后,用?分隔前者和請求數據,請求數據間用&分隔。這樣密碼等數據用戶是可見

POST提交的數據會放到請求體中,該過程用戶是不可見的

GET傳輸的數據量小,只傳輸文本,長度為1024字節,因為受URL長度限制,但效率較高

POST可以傳輸大量數據,所以上傳文件時只能用post方法

GET方法上傳數據,是比較不安全的,POST的安全性比GET較高

URL

可以參看URL概念及組成

二. 請求頭

請求頭(Header)都是以KV方式存放,彼此之間用\r\n分隔。

常見的Header

  • Host:客戶端的主機IP和端口號
  • Connection:連接方式,常見為keep-alive,持久連接。報文可能無法一次性發送完,如果沒有keep-alive,每一次發送都要建立一次連接
  • User-Agent:包含客戶端操作系統,系統引擎版本,瀏覽器信息。簡單過濾一些爬蟲訪問
  • Content-Type:請求體的數據類型

常見的額請求體數據類型

text/htmlHTML格式
text/plain純文本格式
image/jpegjpg圖片格式
application/jsonJSON數據格式

三. 請求體

請求發送時攜帶的數據。數據類型Content-Type的值

請求方法為POST和PUT時,請求體就是要上傳的數據

GET和DELETE沒有請求體

結束語

本篇博客到此結束,感謝看到此處。
歡迎大家糾錯和補充
如果覺得本篇文章對你有所幫助的話,不妨點個贊支持一下博主,拜托啦,這對我真的很重要。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/208681.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/208681.shtml
英文地址,請注明出處:http://en.pswp.cn/news/208681.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

chrome 調試之 - 給微軟小冰看病(無論給小冰發送什么內容都只回復“我已經開始升級啦,期待一下吧!”)

微軟 Bing 搜索推出了小冰AI智能聊天模塊,具體啟用方式是用edge或chrome瀏覽器打開鏈接 cn.bing.com 后在輸入框搜索任意內容,待搜索結果頁面加載完并稍等片刻,頁面右側就會出現一個躲在滾動條后面的小蘿莉,撫摸...不,…

Java-網絡通信總結

文章目錄 網絡程序設計基礎局域網與互聯網 網絡協議IP協議TCP/IP 協議端口域套接字 TCP 程序InterAddress 類ServerSocket 類 UDP 程序DatagramPacket 類DatagramSocket 類 網絡程序設計基礎 網絡程序設計編寫的是與其他計算機進行通信的程序。Java 已經將網絡程序所需要的元素…

RK3588平臺開發系列講解(hardware)reference-ril源碼分析

平臺內核版本安卓版本RK3588Linux 5.10Android 12文章目錄 一、reference-ril目錄介紹二、支持的功能三、Android RIL 框架沉淀、分享、成長,讓自己和他人都能有所收獲!?? 一、reference-ril目錄介紹 目錄:3588-android12/hardware/ril/reference-ril

ElementUI 時間選擇器如何限定選擇時間

DatePicker 日期選擇器 | Element Plus 我們如何限定我們的選擇時間呢,比如限定選擇時間為今天之前,或者今天之后的時間? 我們可以使用官方提供的disabled-date來實現 我們通過這個屬性 做一個回調函數,在里面比較我們想要限定的時…

MongoDB數據建模與文檔設計

目錄 1. 文檔數據庫的概念 2. 數據建模的最佳實踐 3. 復雜文檔結構的設計 4. Java代碼實踐 1. 文檔數據庫的概念 MongoDB文檔模型: MongoDB是一種文檔數據庫,它以BSON(Binary JSON)格式存儲數據。文檔是MongoDB中基本的數據單…

#HarmonyOS:基礎語法

基礎語法 定義了聲明式UI描述; 自定義組件; 動態擴展UI元素的能力; 狀態管理 多維度裝填管理機制;父子組件間爺孫組件間全局范圍內傳遞跨設備傳遞只讀的單向傳遞可變的雙向傳遞 渲染控制 UI描述:以聲明式的方式來…

鴻蒙方舟開發框架ArkUI簡介

語雀知識庫地址:語雀HarmonyOS知識庫 飛書知識庫地址:飛書HarmonyOS知識庫 嗨,各位別來無恙吶,我是小白 眾所周知,華為在今年推出了 HarmonyOS 4.0 版本,而在此之前的版本中,HarmonyOS 應用的 …

2024年AI視頻識別技術的6大發展趨勢預測

隨著人工智能技術的快速發展,AI視頻識別技術也將會得到進一步的發展和應用。2023年已經進入尾聲,2024年即將來臨,那么AI視頻識別技術又將迎來怎樣的發展趨勢?本文將對2023年的AI視頻技術做一個簡單的盤點并對2024年的發展趨勢進行…

Advanced Renamer

Advanced Renamer 安裝鏈接 1.前后添加字符 2.字符轉數字,編號整體加減

oracle實驗2023-12-8--觸發器

第十四周實驗 【例】功能要求:增加一新表XS_1,表結構和表XS相同,用來存放從XS表中刪除的記錄。 分析: 1、創建表 xs_1 SQL> create table xs_1 as select * from xs; Table created SQL> truncate table xs_1; Table truncated題目&a…

StoneDB-8.0-V2.2.0 企業版正式發布!性能優化,穩定性提升,持續公測中!

? 11月,StoneDB 新版本如期而至,這一個月來我們的研發同學加班加點,持續迭代:在 2.2.0 版本中,我們針對用戶提出的需求和做出了重量級更新,修復了一些已知和用戶反饋的 Bug,同時對部分代碼進行…

PairLIE論文閱讀筆記

PairLIE論文閱讀筆記 論文為2023CVPR的Learning a Simple Low-light Image Enhancer from Paired Low-light Instances.論文鏈接如下: openaccess.thecvf.com/content/CVPR2023/papers/Fu_Learning_a_Simple_Low-Light_Image_Enhancer_From_Paired_Low-Light_Instan…

Kafka安全性探究:構建可信賴的分布式消息系統

在本文中,將研究Kafka的安全性,探討如何確保數據在傳輸和存儲過程中的完整性、機密性以及授權訪問。通過詳實的示例代碼,全面討論Kafka安全性的各個方面,從加密通信到訪問控制,幫助大家構建一個可信賴的分布式消息系統…

vue3 setup router的使用教程

vue3 setup router的使用教程 文章目錄 vue3 setup router的使用教程1. 安裝2. 使用(創建路由實例)3. 路由跳轉3.1 通過router-link標簽跳轉3.2 通過js代碼跳轉 4. 接收參數4.1 通過query接收參數4.2 通過params接收參數 5. 路由守衛5.1 全局守衛5.2 路由…

阿里云docker加速

文章目錄 一、 阿里云鏡像倉庫配置二、配置加速1. CentOS2. Mac3. Windows注意 一、 阿里云鏡像倉庫配置 1.注冊阿里云賬號,并登陸到阿里云后臺,進入控制臺面板 2.進入控制臺以后,找到左上方的三橫的功能列表按鈕,在彈出來的功能…

智能手機IC

智能手機IC 電子元器件百科 文章目錄 智能手機IC前言一、智能手機IC是什么二、智能手機IC的類別三、智能手機IC應用實例四、智能手機IC作用總結前言 智能手機IC通過相互配合和協同工作,支持智能手機的各種功能和特性,如高速計算、多媒體處理、無線通信、圖形渲染、傳感器數據…

G1 GC基本邏輯

1 MixedGC基本過程 在G1GC中,有兩種主要的垃圾回收過程:Young GC和Mixed GC。這兩者都是為了回收堆內存中的垃圾對象,但是他們關注的區域和工作方式有所不同。 Young GC: Young GC主要負責回收Young Generation(包括…

跟著GPT學設計模式之建造者模式

Builder 模式,中文翻譯為建造者模式或者構建者模式,也有人叫它生成器模式。允許你創建不同口味的對象同時避免構造器污染。當一個對象可能有幾種口味,或者一個對象的創建涉及到很多步驟時會很有用。 現實世界例子:想象一個角色扮…

Vue:用IDEA開發Vue,標簽語法爆紅問題處理

一、場景描述 我在IDEA中,學習Vue課程。 入門學習時,是在html文件中,script引入vue.js文件方式。 此時,在html文件中用v-標簽,爆紅。 二、解決辦法 打開 菜單欄 File - Settings 選擇 Editor - Files Type&#xf…

《每天一個Linux命令》 -- (5)通過sshkey密鑰登錄服務器

歡迎閱讀《每天一個Linux命令》系列!在本篇文章中,將介紹通過密鑰生成,使用公鑰連接管理服務器。 概念 SSH 密鑰是用于安全地訪問遠程服務器的一種方法。SSH 密鑰由一對密鑰組成:公鑰和私鑰。公鑰存儲在遠程服務器上,…