我想将一些数据发送到只接受json对象的Web服务。我将使用curl进行HTTP POST,但我想知道它有一个库在bash中创建一个json对象。
另一个要求是避免安装其他软件包(rpm / apt-get),而只安装其他bash文件作为库。
答案 0 :(得分:11)
这是从BigQuery API
获取的示例curl -H "Authorization: GoogleLogin auth=<<YOUR_TOKEN>>" \
-X POST \
-H "Content-type: application/json" \
-d '{"params":{"q":"select count(*) from [bigquery/samples/shakespeare];"},"method":"bigquery.query"}' \
'https://www.googleapis.com/rpc'
答案 1 :(得分:1)
结帐TickTick。
这是一个真正的Bash JSON解析器。
字符串化器应该很快就会出现,(但是使用bash的foreach创建自己的字符串并不困难。)
#!/bin/bash
. /path/to/ticktick.sh
# File
DATA=`cat data.json`
# cURL
#DATA=`curl http://foobar3000.com/echo/request.json`
tickParse "$DATA"
echo ``pathname``
echo ``headers["user-agent"]``
答案 2 :(得分:0)
我推荐Jshon。 http://kmkeen.com/jshon/
它被设计为在shell中尽可能可用,并替换由grep / sed / awk制作的脆弱的adhoc解析器以及由perl / python制作的重量级单行解析器。
需要Jansson,但您可以构建静态链接版本。