Json POST请求时的奇怪卷曲行为
我对cURL和restfulapi有一个小问题 从Postman,我使用以下JSON对原始正文执行POST请求:Json POST请求时的奇怪卷曲行为,json,bash,post,curl,Json,Bash,Post,Curl,我对cURL和restfulapi有一个小问题 从Postman,我使用以下JSON对原始正文执行POST请求: { "name" : "bob", "age" : 22 } JSON是在Web服务上接收的,它执行它必须执行的任何操作,返回一条成功的消息,该消息由我的API作为响应发送(只是为了检查一切是否正常) 我正在尝试制作一个bash脚本,其中包括一个与POST请求完全相同的脚本。我是这样做的:curl-xpost-d'{“name”:“bob”,“age”:22}'ht
{
"name" : "bob",
"age" : 22
}
JSON是在Web服务上接收的,它执行它必须执行的任何操作,返回一条成功的消息,该消息由我的API作为响应发送(只是为了检查一切是否正常)
我正在尝试制作一个bash脚本,其中包括一个与POST请求完全相同的脚本。我是这样做的:curl-xpost-d'{“name”:“bob”,“age”:22}'http://my.url/my/API
(我知道-X POST
不是必需的,因为我已经读过-d
使cURL自动执行POST请求)。奇怪的是,后者返回以下错误:{“code”:“InternalError”,“message”:“Unexpected token o”}
我不明白这是怎么回事。我是不是少了一面旗子?我还尝试指定cURL请求的头(-H“Content-Type:application/json”
),但得到了相同的结果
编辑:在JSON中的数字周围加引号(“age”:“22”
)会得到相同的结果
EDIT2:我意识到,当我执行来自Postman的请求时,服务器端
req.body
是一个字符串,而当执行来自cURL的请求时,它是一个对象。我可以很容易地修复这个服务器端,但我想知道是否有人知道为什么会发生这种情况。将--trace ascii logdump.txt
添加到命令行,并确切地调查curl发送/接收的是什么。一切似乎都很好。由于这个错误,我正确地发送了JSON并接收了400个错误请求。我想我在服务器端找到了一些东西。我更新了问题。