我要在发出bash
请求后执行POST
脚本。到目前为止,我正在使用Postman
发送请求,但是我想知道是否可以通过某种方式做到这一点从bash
脚本以及json
文件作为参数。
到目前为止,我已经研究了curl
,但是它不起作用:
bash文件
curl -X POST -d req.json http://localhost:9500
Json文件(req.json
)
{
"id":5,
"name":"Dan",
"age":33,
"cnp":33,
"children":100,
"isMarried":0
}
我刚得到错误:
HTTP/1.0 503 Service Unavailable
后跟HTML
答案 0 :(得分:1)
curl
应该可以完成这项工作。这将使用req.json
中的数据作为正文发送正常的POST请求:
curl -X POST -H "Content-Type: application/json" -d @req.json http://localhost:9500
您丢失的元素是-H "Content-Type: application/json"
和数据标志中的@
。如果没有上述-H
的{{1}}标志,则将发送内容类型为curl
的内容,大多数应用程序如果期望使用JSON,则不会接受。 application/x-www-form-urlencoded
标志中的@
通知-d
您正在传递文件名;否则,它将文本本身(即“ req.json”)用作数据。