我在我的foxx微服务中向端点发布JSON消息。 我不清楚如何获取完整的JSON来解析它:
router.post('/storeDataRecord', (req, res) => {
....
}).body('deviceData');
这是json:
{
“data”: [
{
“id”: “identifier”,
“key1”: “value1”,
“key2”: “value2”
}
]
}
我已经尝试了
var request = req.body.deviceData;
var request = req.body.get('data');
你能帮我理解如何导航json吗?
答案 0 :(得分:0)
这是一个接受json主体的请求后路由的最小,完整的工作示例:
var joi = require('joi');
var processJson = function(jsonObject) {
return JSON.stringify(jsonObject);
};
router.post('/start', function(req, res) {
var result = processJson(req.body);
res.json({'result': result});
}).summary('Json example').body(joi.object().unknown(true), ['json']);
请注意,声明了接受的内容类型(['json']
,['application/json']
的简写)
当然这假设您发布的数据实际上是有效的JSON,但如果不是,您应该在发送方看到错误(调试发送代码并检查您传递的数据),或者至少是错误来自arangodb表示请求中的无效数据。
答案 1 :(得分:0)