配置JSON响应

时间:2018-12-22 23:25:15

标签: javascript json api express joi

我用Joi创建了一个架构,并且想要一个与我的架构匹配的JSON响应(发布时)。问题是:我必须给它一个不需要的父项(在我的示例中为“ data:”(我知道,我可以用我想要的名字命名))。模式的属性应该在JSON中单独存在。给它一个父母,它(Object.assign(value))不起作用。有什么想法吗?

.post((req,res,next) => {
  let data = req.body;
  Joi.validate(data, schema, (err, value) => {

    res.json({
              data: Object.assign(value)
            });
  });

})

预期:

{
    "title": "dasdawdasfasd",
    "textshort": "wasser",
    "textlong": "",
    "imgwidth": null,
    "imgheight": null,
    "imgsrc": "",
    "views": 0,
    "keywords": []
}

实际:

{
  "data": {
    "title": "dasdawdasfasd",
    "textshort": "wasser",
    "textlong": "",
    "imgwidth": null,
    "imgheight": null,
    "imgsrc": "",
    "views": 0,
    "keywords": []
  }
}

1 个答案:

答案 0 :(得分:1)

仅返回数据

.post((req,res,next) => {
  Joi.validate(data, schema, (err, value) => {
       res.json(value);
  });

 })