cURL 將原生支援 JSON

2022-01-22 09:00:06

cURL 作者 Daniel Stenberg 在郵件了為 cURL 新增原生支援 JSON 的計劃。

Daniel 解釋了為 cURL 新增原生支援 JSON 的理由:

  1. 在 REST APIs 等領域,傳送 JSON 是十分普遍的做法
  2. 許多人被問及選擇 cURL 替代方案的考慮因素時,「易於使用 JSON」是常見的一項
  3. 在 Stack Overflow 等網站上,相當多的人無法使用 cURL 傳送正確的 JSON 和正確參照 JSON,因為 JSON 使用了雙引號,而 Shell 不會在單引號內擴充套件變數

Daniel 還表示,由於自己不經常傳送 JSON,所以完全靠他來設計這個功能並不合適。他需要其他人的幫助,讓這個功能儘可能地有用。

目前 Daniel 已在 wiki 中提供了,同時建立了。

簡單來說,Daniel 計劃增加兩個命令列選項:

  1. 傳送已格式化的 JSON 作為 -d 的快捷方式,並附帶相匹配的 Accept header
  2. 通過構建 JSON request body 進行傳送

--json -|<data>|@filename

curl --json [whatever] http://example.com

上述命令列是一種快捷方式,其作用等同於 -d [whatever] -H "Content-Type: application/json"

--jp [part]

('jp' 是 "JSON part" 的縮寫)

構建 JSON request body,然後使用 request headerContent-Type: application/json傳送 JSON。

[part] 是構建 JSON 內容的指令。

(Syntax inspired by )

詳情檢視:

展開閱讀全文