缺少字段的蒙戈 api POST



我的JSON对象中的字段不是由Mongo在api调用中插入的。我想我误解了 JSON 测试数据中的对象需要命名的内容。我已经尝试了"待办事项","待办事项"等的组合,但无济于事。

我正在尝试本教程来构建 MEAN 堆栈应用程序。但是,我已经设法构建了它,在邮递员 POST 测试调用的正文中使用此 JSON 对象

"todo": {
    title: "TaskTitle",
    description: "TaskDescription",
    status: "Not assigned"
}

当我在 Postman 中通过 POST 进行测试时,当我在 Robo 3T 中查看新创建的对象时,只会填充_iddate__v字段。

我期待看到_iddate__vtitledescriptionstatus填充在Robo 3T中。

我的模型如下所示:

var mongoose = require('mongoose')
var mongoosePaginate = require('mongoose-paginate')

var ToDoSchema = new mongoose.Schema({
    title: String,
    description: String,
    date: Date,
    status: String
})
ToDoSchema.plugin(mongoosePaginate)
const ToDo = mongoose.model('Todo', ToDoSchema)
module.exports = ToDo;

并且执行发布本身的控制器将请求正文显示为未定义,即;

exports.createTodo = async function(req, res, next){
    // Req.Body contains the form submit values.
    console.log(toString(req.body.title));//----shows as [object Undefined] in console
    var todo = {
        title: req.body.title,
        description: req.body.description,
        status: req.body.status
    }
    try{
        // Calling the Service function with the new object from the Request Body
        var createdTodo = await TodoService.createTodo(todo)
        return res.status(201).json({status: 201, data: createdTodo, message: "Succesfully Created ToDo"})
    }catch(e){

我已经尝试了其他SO帖子,但无济于事。

这不是有效的 JSON:

"todo": {
    title: "TaskTitle",
    description: "TaskDescription",
    status: "Not assigned"
}

这些是:

{
    "todo": {
        title: "TaskTitle",
        description: "TaskDescription",
        status: "Not assigned"
    }
}

{
    title: "TaskTitle",
    description: "TaskDescription",
    status: "Not assigned"
}

@MondKin非常感谢你坚持我......问题是使用Postman进行测试,并且正文格式为"文本",而不是"JSON(应用程序/json(">

问题已解决...议员!

相关内容

  • 没有找到相关文章

最新更新