在現代的 Web 開發和 API 集成中,HTTP 請求是最常見的操作之一。無論是獲取數據、提交表單,還是與 RESTful API 交互,我們都需要頻繁地發送 HTTP 請求。為了簡化這些操作,提升代碼的可讀性和可維護性,我們可以使用一個高效的工具類——HttpUtils
。本文將詳細介紹 HttpUtils
的設計思路、功能實現以及實際應用場景,幫助你快速掌握這一工具的使用方法。
1. HttpUtils 簡介
HttpUtils
是一個基于 Python requests
庫封裝的 HTTP 請求工具類。它提供了常用的 HTTP 請求方法(如 GET、POST、PUT、DELETE、PATCH),并支持通過統一的 send_request
方法動態發送請求。通過 HttpUtils
,開發者可以更簡潔、高效地處理 HTTP 請求,減少重復代碼,提升開發效率。
2. 功能詳解
HttpUtils
的核心功能包括:
- GET 請求:用于獲取資源。
- POST 請求:用于提交數據或創建資源。
- PUT 請求:用于更新資源。
- DELETE 請求:用于刪除資源。
- PATCH 請求:用于部分更新資源。
- 動態請求方法:通過
send_request
方法動態選擇請求方法。
下面我們將逐一介紹這些功能,并通過示例代碼展示其使用方法。
2.1 GET 請求
GET 請求用于從服務器獲取資源。HttpUtils
提供了 get
方法,支持傳遞 URL、查詢參數和請求頭。
示例代碼:
response = HttpUtils.get(url="https://api.example.com/data",params={"key": "value"},headers={"Content-Type": "application/json"}
)
print("GET Response:", response.json())
參數說明:
url
:請求的 URL。params
:查詢參數,字典類型。headers
:請求頭,字典類型。
2.2 POST 請求
POST 請求用于向服務器提交數據或創建資源。HttpUtils
提供了 post
方法,支持傳遞 URL、請求體數據(data
或 json
)和請求頭。
示例代碼:
response = HttpUtils.post(url="https://api.example.com/data",json={"ip": "117.136.12.79"},headers={"Content-Type": "application/json", "Authorization": "Bearer your_token_here"}
)
print("POST Response:", response.json())
參數說明:
url
:請求的 URL。data
:表單數據,字典類型。json
:JSON 格式的請求體數據,字典類型。headers
:請求頭,字典類型。
2.3 PUT 請求
PUT 請求用于更新服務器上的資源。HttpUtils
提供了 put
方法,支持傳遞 URL、請求體數據和請求頭。
示例代碼:
response = HttpUtils.put(url="https://api.example.com/data/1",data={"key": "new_value"},headers={"Content-Type": "application/json", "Authorization": "Bearer your_token_here"}
)
print("PUT Response:", response.json())
參數說明:
url
:請求的 URL。data
:請求體數據,字典類型。headers
:請求頭,字典類型。