bash – 具有多行JSON的卷曲

前端之家收集整理的这篇文章主要介绍了bash – 具有多行JSON的卷曲前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
考虑下面的curl命令,是否可以允许JSON中的换行符(没有minify)并直接在bash(Mac / Ubuntu)中执行
curl -0 -v -X POST http://www.example.com/api/users \
-H "Expect:" \
-H 'Content-Type: text/json; charset=utf-8' \
-d \
'
{
    "field1": "test","field2": {
        "foo": "bar"
    }
}'

当我运行上面的命令时,似乎错误发生在第二个{
如何解决上述命令?

更新:实际上我以前没有问题地运行命令,不知道为什么最近发生问题。

我记得另一种使用Bash man页面detailed here中所述的“Here Document”来执行此操作。@ – 意味着从STDIN读取正文,而< EOF意味着管理脚本内容,直到“EOF”为STDIN才能卷曲。这种布局可能比使用单独的文件或“回显变量”方法更容易阅读。
curl -0 -v -X POST http://www.example.com/api/users \
-H "Expect:" \
-H 'Content-Type: text/json; charset=utf-8' \
-d @- << EOF

{
    "field1": "test","field2": {
        "foo": "bar"
    }
}
EOF

注意:使用–trace< outfile>卷曲选项,以准确记录电线上的内容。由于某种原因,这里的文档方法剥离换行符?

猜你在找的Bash相关文章