Ich versuche, ein einfaches Blog mit einem MEAN-Stack zu bauen, und ich bin gerade dabei, das Backend einzurichten. Ich teste meine Routen mit Postman und aus irgendeinem Grund kann ich den Titel und den Text eines Posts nicht in der DB speichern.Postparams nicht in Mongo gespeichert db
Mein Modell: models/posts/db.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var PostSchema = new Schema ({
title: { type: String },
body: { type: String },
date: { type: Date, default: Date.now }
});
module.exports = mongoose.model('Post', PostSchema);
Mein Controller: controllers/posts.index.js
var base = process.env.PWD;
var Post = require(base + '/models/posts/db.js')
var createPost = function(req, res) {
var post = new Post(req.body)
post.save(function(err, post) {
if(err) { res.sendStatus(500, err); }
res.json(post);
})
}
var getPosts = function(req, res) {
Post.find(function(err, posts) {
if (err) { res.sendStatus(500, err); }
res.json(posts);
})
};
module.exports = {
createPost,
getPosts
}
Und hier meine Hauptrouten sind in routes/index.js
router.get('/posts', posts.getPosts);
router.post('/posts/create', posts.createPost);
module.exports = router;
Und mein Hauptserver eineverwendetEndpunkt:
`app.use('/api', routes);`
So in Postman, wenn ich eine POST-Anforderung an /api/posts/create
mit einem Beitrag enthält einen Titel und einen Körper senden, wird ein leerer Eintrag gespeichert ist. Ich bekomme so etwas eingefügt:
{
"__v": 0,
"_id": "5a29de91521f168eb9e1bcf2",
"date": "2017-12-08T00:36:33.280Z"
}
Jede Hilfe wäre willkommen.
Was bekommen Sie, wenn Sie 'console.log (req.body)' an der Spitze der Post-Controller? – MikaS
Hmm Ich bekomme "undefined". Sieht so aus, als wäre nichts in req.body, wenn ich die Post-Anfrage sende. Ich hoffe, ich schiebe das richtig in [Postman] (https://i.imgur.com/NvestFA.png): – user7496931
Postbote sollte wie [this] eingerichtet werden (https://i.imgur.com/tWhLwx0 .png) wenn du json benutzt. Dieser spezielle Screenshot wurde in einer anderen Frage verwendet, aber die Einstellungen sind ähnlich. – MikaS