什麼是 HTTP 客戶端?
HTTP 客戶端是一種用於發送 HTTP 請求和接收 HTTP 響應的工具。它們通常用於 Web 開發中,用於與 Web 服務器進行通信。
倉庫地址
https://github.com/curry-trooper/tank-http-client.js
中文文檔
https://github.com/curry-trooper/tank-http-client.js/blob/main/README_zh.md
安裝
npm install tank-http-client.js
tank-http-client.js 的主要功能和特點
tank-http-client.js 是一個基於 needle.js 的 HTTP 客戶端,只支持 Node.js 環境。它支持鏈式調用,單元測試和文檔。以下是一些它的主要特點:
特性
支持鏈式調用 支持多種 HTTP 方法,如 GET、POST、PATCH、PUT、DELETE 等 支持設置請求頭和請求體 支持設置超時時間 支持 Promise API 支持單元測試 更多的代碼示例 以下是一些使用 tank-http-client.js 的代碼示例:
//設置基礎URL地址
thc.setBaseUrl("http://localhost:3008")
//get 請求 鏈式調用
thc.get("/test")
.query({id: 1})
.send()
.then((res) => {
console.log(res)
}).catch(err => {
console.error(err)
});
//輸出 ->{code: 200, method: 'GET', data: 'get_test', search: '1'}
//await 鏈式調用
async () => {
const res = await thc.get("/test")
.query({id: 1})
.send()
console.log(res)
}
//輸出 ->{code: 200, method: 'GET', data: 'get_test', search: '1'}
鏈式調用的優點
鏈式調用是一種編程模式,它允許你在一行代碼中完成多個操作。使用鏈式調用可以使代碼更加簡潔和易讀。以下是一個使用鏈式調用的示例:
//use header
thc.get("/test").query({id: 1}).header({token: "token_8899"}).header("useAuth", true).send().then((res) => {
//res:{code: 200, method: 'GET', data: 'get_test', search: '1',headerToken: "token_8899",useAuth:"true"}
})
//expressjs
app.get('/test', function (req, res) {
res.json({
code: 200,
method: req.method,
data: "get_test",
search: req.query["id"],
headerToken: req.header("token"),
useAuth: req.header("useAuth")
})
})
PS
- tank-http-client.js 是本人對needle.js 進行了二次封裝,可靠性可以保證,這裏提高了易用性,簡化了開發流程,推薦大家使用
- 此文章部分由ai生成,可能有誤,請仔細斟讀