【发布时间】:2019-06-27 15:45:17
【问题描述】:
我正在使用nest.js,并且我有一个发布路径来将新新闻添加到数据库 所以我用邮递员发送这样的对象数组:
[
{
"newsTitle" : "title1",
"newsDescription": "description1"
},
{
"newsTitle" : "title2",
"newsDescription": "description2"
}
]
这是在我的控制器中发布的代码:
@Post()
async create(@Body() body: NewsDto[]) {
const len = body.length;
if (len == 1) {
}
else if (len > 1) {
}
return this.newsService.createNews(body);
}
所以一切都可以正常发布并将数据保存在数据库中 但是当我使用 swagger 时,我得到了这个控制器的 dto 的模型,如下所示:
你可以看到这里没有显示 dto 的参数,我得到了“数组”标题,因为我使用了@Body() body: NewsDto[],你看到的就是数组
在帖子中我也无法获取 JSON,因此我可以添加它或用另一个词发布它
那么如何处理这个问题,当数组的长度只有 1 个对象时,我返回 NewsDto 参数,如果数组的长度超过 1 个对象,那么也返回 NewsDto 参数而不是 Array?
【问题讨论】:
标签: javascript node.js typescript swagger nestjs