我有一个包含文档的数据库,我想从中检索一些数据,为Foxx服务提供一系列密钥。它使用单个字符串,但我错过了一些关于实现数组的内容。
已更新
router.get('/keys', function (req, res) {
const keys = db._query(aql`
FOR huis IN test
FILTER huis._key in ${req.queryParams.keys}
RETURN {
'adres': huis.adres,
'postcode': huis.postcode,
'plaats': huis.plaats
}
`);
res.send(keys);
})
.queryParam('keys', joi.array().required(), 'query to search for')
.response(joi.array()
.items(
joi.string().required()
)
.required(), 'List of house keys.')
.summary('List house keys')
.description('Makes LAT LNG from house keys.');
joi.array()在服务概述页面上给Arango带来了很好的解释,如下所示。但我处理错了,因为它返回404。
答案 0 :(得分:0)
如果要传递数组,则需要使用queryParam或bodyParam而不是pathParam。
我建议您将路由器路径更改为router.get('/keys', function (req, res) {
,然后将该值设置为req.queryParams.keys
。
当您通过queryParam发送数组时,您有几个选项,/keys?keys=1234,5678
或/keys?keys=1234&keys=5678
。