繁体   English   中英

我的使用nodejs express传递到mongodb数据库的请求不会奇怪吗?

[英]my post request using nodejs express to mongodb database doesn't work strangely?

我正在尝试将数据发布到服务器以保存到mongodb中。 通知get请求工作正常,但是我无法将任何数据发布到mongodb数据库。

主要代码:

// Tools to be used in the web development
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var mongoose = require('mongoose');

app.use(bodyParser.json());


Genre = require('./models/genre.js');
Book = require('./models/book.js');



let conn = mongoose.connection;
conn.openUri('mongodb://localhost/bookstore');

conn.on('error', err => console.error('mongodb connection error', 
err));
conn.on('connected', () => console.info(`Connected to mongodb`));
conn.on('disconnected', () => console.info('Disconnected from 
mongodb'));


// Routing to specific pages:
app.get('/', function(req, res){
res.send('Hello World');
});

app.get('/api/genres', function(req , res){
Genre.getGenres(function(err, genres){
    if(err){
        throw err;
    }
    res.json(genres);
})
});

app.post('/api/genres', function(req , res){
var genre = req.body;
Genre.addGenre(genre, function(err, genre){
    if(err){
        throw err;
    }
    res.json(genre);
})
});

app.get('/api/books', function(req , res){
Book.getBooks(function(err, books){
    if(err){
        throw err;
    }
    res.json(books);
})
});

app.get('/api/books/:_id', function(req , res){
Book.getBookById(req.params._id, function(err, book){
    if(err){
        throw err;
    }
    res.json(book);
})
});

//Specify the listening port
app.listen(3666);
//Display the url on the termianl
console.log('Server Running On http://localhost:3666');

流派

var mongoose = require('mongoose');


var genreSchema = mongoose.Schema({
name:{
    type: String,
    requires: true
},
create_date:{
    type: Date,
    default: Date.now
}
});

var Genre = module.exports = mongoose.model('Genre', genreSchema);

module.exports.getGenres = function(callback, limit){
Genre.find(callback).limit(limit);

}

//add genre
module.exports.addGenre = function(genre, callback){
Genre.create(callback);

}

我使用邮递员应用程序发布信息,一旦按发布信息,我什么也收不到,也没有任何东西被添加到数据库

邮递员程序

邮递员程序

和post过程前后的数据库保持不变

在此处输入图片说明

尝试以下方法:

module.exports.addGenre = function(genre, callback){
   Genre.create(genre, callback); // genre is object to be added, { name: "Name" } for example
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM