在Linux使用命令行工具curl发送JSON数据需要把content-type设置为“application/json”。
-H "Content-Type: application/json
示例
curl -H "Content-Type: application/json" -X POST -d '{"username":"jack","age":10}' http://example.com/api/user
-H,--header:设置头信息Content-Type为application/json。
-d,--data:添加发送的数据。
-X:指定http请求的方法。如果使用了-d,默认是使用POST,可以省略-X参数。
此外也可以把json数据放在一个文件里。
curl -H "Content-Type: application/json" -X POST -d @user.json http://example.com/api/user
注意:文件前的@不能去掉
Windows
对于windows,-d参数的数据,需要使用双引号,json里的双引号使用反斜杠转义才可以:
curl -H "Content-Type: application/json" -X POST -d "{\"username\":\"jack\",\"age\":10}" http://example.com/api/user