Javascript Mongoose不使用express server发布
我正在试验猫鼬,我做了一个小项目: db.js Server.jsJavascript Mongoose不使用express server发布,javascript,node.js,mongodb,postman,Javascript,Node.js,Mongodb,Postman,我正在试验猫鼬,我做了一个小项目: db.js Server.js var express = require('express'); var bodyParser = require('body-parser'); var db = require('./db'); var Boek = require('./models/boeken'); var app = express(); app.use(bodyParser.json()); //1. Eenvoudige instructi
var express = require('express');
var bodyParser = require('body-parser');
var db = require('./db');
var Boek = require('./models/boeken');
var app = express();
app.use(bodyParser.json());
//1. Eenvoudige instructie
app.get('/api', function (req, res) {
res.json({'Gebruik': 'voer een GET of POST-call uit naar /boeken'});
});
//2. POST-endpoint: nieuw boek in de database plaatsen
app.post('/api/boeken', function (req, res, next) {
var boek = new Boek({
titel: req.body.titel,
auteur: req.body.auteur,
ISBN: req.body.ISBN
});
});
app.listen(3000, function () {
console.log('server gestart op poort 3000');
});
models/boeken.js
var mongoose = require("mongoose");
var Boek = mongoose.model('Boek', {
titel: {type: String, required: true},
auteur: {type: String, required: true},
ISBN: {type: String, required: true},
date: {type: Date, required: true, default: Date.now()}
});
module.exports = Boek;
但是当我用Postman
发布以下json时,它只显示“发送…”,在浏览器中显示无法发布/api/boeken
,并且不发布数据:
{
"titel": "Hey",
"auteur": "You",
"ISBN": "1111"
}
我做错了什么?我正在后台使用mongod.exe
守护进程
我可以在浏览器上访问/api,顺便说一句,您必须结束该帖子的工作请求:
app.post('/api/boeken', function (req, res, next) {
var boek = new Boek({
titel: req.body.titel,
auteur: req.body.auteur,
ISBN: req.body.ISBN
});
boek.save((err, b) => {
res.status(201).send(b); // end the request.
});
});
另外,确保您的客户端将内容类型头设置为application/json 您必须结束该职位的工作请求:
app.post('/api/boeken', function (req, res, next) {
var boek = new Boek({
titel: req.body.titel,
auteur: req.body.auteur,
ISBN: req.body.ISBN
});
boek.save((err, b) => {
res.status(201).send(b); // end the request.
});
});
另外,确保您的客户端将内容类型头设置为application/json 因为你从来没有调用过
res.end
,它将永远请求…因为你从来没有调用过res.end
,它将永远请求…对不起,我是想加进去的。非常感谢他解决了我的问题!有道理,我以前试过使用.save()
,但它给了我一个承诺错误,因为我不知道如何使用它。如果你愿意,可以使用承诺,如果你想看到语法,请使用lmk。是的,我看到了,但这是为了我明天的考试,所以我现在宁愿保持简单,并遵守指南。但是谢谢,我以后会调查的!对不起,我是想加进去的。非常感谢他解决了我的问题!有道理,我以前试过使用.save()
,但它给了我一个承诺错误,因为我不知道如何使用它。如果你愿意,可以使用承诺,如果你想看到语法,请使用lmk。是的,我看到了,但这是为了我明天的考试,所以我现在宁愿保持简单,并遵守指南。但是谢谢,我以后会调查的!