createJsonClient将我的数据发布到像
这样的restify服务器console.log(typeof payload); // string
payload = JSON.parse(payload).Body;
console.log(payload); //object
client.post('/sqs', payload, function (err, req, res, obj) {
if (err)
callback(err, null);
else {
console.log(obj);
}
});
但是我得到了
{ [InternalError: Unexpected token o]\n message: 'Unexpected token o',\n statusCode: 500,\n body: { code: 'InternalError', message: 'Unexpected token o' },\n restCode: 'InternalError',\n name: 'InternalError' }
有效负载是JSON.parse之后的有效JSON对象,如何在restify.createJsonClient中发布对象?
答案 0 :(得分:1)
您的有效负载是一个对象,而您需要发送JSON字符串,所以只需删除行
payload = JSON.parse(payload).Body;
client.post('/foo', { hello: 'world' }, function(err, req, res, obj) {
assert.ifError(err);
console.log('%d -> %j', res.statusCode, res.headers);
console.log('%j', obj);
});