首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将输入作为数组,使其无法工作。

将输入作为数组,使其无法工作。
EN

Stack Overflow用户
提问于 2018-03-01 11:25:21
回答 1查看 1.1K关注 0票数 2

我有下面的代码用于我的swagger文档。在这里,我试图创建一个API,其中我想把输入作为一个对象数组。到目前为止,我正在做的事情如下。

代码语言:javascript
运行
复制
{
    method: 'POST',
    path: '/api/Route',
    handler: function(request, reply) {
        //some operations
        reply('Success');
    },

    config: {
        description: 'Create a Route',
        tags: ['api', 'user'],
        auth: 'UserAuth',
        validate: {
            payload: {
                "array": [{
                        userId: Joi.string().trim().required(),
                        status: Joi.number().required()
                    },
                    {
                        userId: Joi.string().trim().required(),
                        status: Joi.number().required()
                    },
                    {
                        userId: Joi.string().trim().required(),
                        status: Joi.number().required()
                    }
                ]
            }
        },
        plugins: {
            'hapi-swagger': {
                responseMessages: swaggerDefaultResponseMessages
            }
        }
    }
}

所以当我运行上面的代码时,swagger会创建这样的文档。这是指向图像的链接。。所以,请任何人告诉我,为什么我不能在swagger文档中获得整个数组,而只获取数组的一个元素。我还看到了下面的问题,但无法理解它们在哪个文件中进行这些更改。有人能帮忙吗?提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-02 05:48:50

您可以使用Joi的数组验证。然后,在输入中,只需将数组传递到其中。为此,您只需要在有效负载中编写以下代码,而不是目前正在编写的代码。

代码语言:javascript
运行
复制
payload: {
         userData: Joi.array().items({
             userName: Joi.string(),
             status: Joi.string()
         })
     }

在此之后,您的傲慢文档看起来就像这样。

userData是您的对象数组。您可以给出输入对象数组,如下所示。

代码语言:javascript
运行
复制
"userData": [{
             "userName": "string", // objects
             "status": "string"
         },
         {
             "userName": "string", // objects this way you can add more
             "status": "string"
         }
     ]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49048682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档