0

我有一个包含文档的数据库,我想从中检索一些数据,为 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。

在此处输入图像描述

4

1 回答 1

0

如果要传递数组,则需要使用 queryParam 或 bodyParam 而不是 pathParam。

我建议将您的路由器路径更改为router.get('/keys', function (req, res) {,然后将值访问为req.queryParams.keys.

当您通过 queryParam 发送数组时,您有几个选项, as/keys?keys=1234,5678或 as /keys?keys=1234&keys=5678

于 2017-04-14T09:17:16.213 回答