arangodb,如何从 Post 请求中检索 JSON
arangodb, How to retrieve JSON from Post request
我正在向我的 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 吗?
这是接受 json 主体的 post-request 路由的最小、完整、有效的示例:
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']);
请注意,接受的 content-type 已声明(['json']
,shorthand 用于 ['application/json']
)
当然,这假设您 post 的数据实际上是有效的 JSON,但如果不是,您应该在发送端看到错误(调试发送代码并检查数据你通过了),或者至少是 arangodb 的一个错误,表明请求中的数据无效。
验证您的 JSON 数据
我正在向我的 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 吗?
这是接受 json 主体的 post-request 路由的最小、完整、有效的示例:
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']);
请注意,接受的 content-type 已声明(['json']
,shorthand 用于 ['application/json']
)
当然,这假设您 post 的数据实际上是有效的 JSON,但如果不是,您应该在发送端看到错误(调试发送代码并检查数据你通过了),或者至少是 arangodb 的一个错误,表明请求中的数据无效。