【bash】 curl


curl 簡介


1. 乜嘢係 curl

  • curl (Client URL)係一個跨平台嘅命令行工具,用嚟向URL發送請求,下載或者傳送數據。
  • 支持嘅協議非常多,包括 HTTP、HTTPS、FTP、SFTP、SMTP、POP3、IMAP 等。
  • curl 唔單止係普通嘅下載工具,更係開發、測試API、調試網絡通信嘅利器。

2. curl嘅基本用法

1
curl <URL>
  • 會向指定嘅URL發送GET請求,並且打印響應內容。

例如:

1
curl https://ifconfig.me

會顯示你嘅外網IP地址。


3. 常用參數介紹

參數 作用
-X <METHOD> 指定HTTP請求方法(GET、POST、PUT等)
-d <DATA> POST請求時傳送數據
-H <HEADER> 自定義請求頭
-I 只查看響應頭,不下載響應內容
-L 跟蹤重定向
-o <FILE> 將響應輸出到文件
--proxy <PROXY> 通過代理發送請求
-v--verbose 顯示詳細請求與響應過程
-k--insecure 忽略SSL證書驗證(不推薦)

4. 例子

GET 請求

1
curl https://api.example.com/data

POST 請求

1
curl -X POST -d "username=abc&password=123" https://api.example.com/login

帶自定義Header

1
curl -H "Authorization: Bearer token" https://api.example.com/profile

通過代理

1
curl --proxy socks5h://127.0.0.1:1080 https://ifconfig.me

5. 為什麼 curl 係前端/後端開發都要識嘅工具?

  • 快速測試HTTP接口,幫助你檢查API是否正確回應。
  • 能模擬不同HTTP請求,方便調試。
  • 支援腳本化,自動化測試或批量請求。

6. 前瞻性思考:curl的未來

  • 隨住API和微服務的爆炸式增長,curl依然會是最簡潔、高效嘅測試工具。
  • 現代curl版本已支持HTTP/2和HTTP/3,性能和安全性更上一層樓。
  • 很多開發平台和工具都集成了curl,使得它成為跨平台標準。