curl命令的輔助工具jq

引言

在*unix世界裏,可以通過curl來獲取http請求的相應結果,但是curl的響應結果大部分無法格式化實現,例如在json的響應結果,顯示的效果會比較差,那該如何讓顯示結果更好一些呢? 本文將嘗試回答這個問題。

jq

地址: https://stedolan.github.io/jq/
功能描述: jq is a lightweight and flexible command-line JSON processor.
jq是一個非常輕量和靈活的基於命令行的json處理器

功能列表:
- 可以基於命令行輸出,進行格式化顯示
- 可以基於jquery的語法進行結果的過濾顯示

安裝

安裝指南: https://stedolan.github.io/jq/download/
Macos:

brew install jq

Linux:

sudo apt-get install jq

使用說明

對於jq,在命令行中使用之時,一般通過管道來進行輸出結果的解析和格式化:

curl -i http://localhost:8080/todo/data

HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Date: Fri, 09 Aug 2019 02:24:40 GMT

{"id":123,"name":"who is jack?"}

curl -i http://localhost:8080/todo/data | jq

 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    32    0    32    0     0   2894      0 --:--:-- --:--:-- --:--:--  3200
{
  "id": 123,
  "name": "who is jack?"
}

更爲詳細的使用說明文檔: https://stedolan.github.io/jq/tutorial/

One More Things

如果對於此類命令行工具實在是不習慣,推進使用 postman, 基於界面可視化的操作方式,並且可以記錄所有的請求過程,非常好用的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章