2016-09-20 1 views
0

Je n'arrive pas à envoyer des données via Postman & Express. Mon code postal du verbe est le suivantPas de réponse de Express + postier

app.use(bodyParser.urlencoded({extended:true})); 
app.use(bodyParser.json()); 

var fdbRouter = express.Router(); 
fdbRouter.route('/films') 
//post verb 
.post(function (req, res) { 

var item = new Film(req.body); 
console.log(item); 
//item.save(); 
res.status(201).send(item); 

}) 

Et ma configuration Postman est comme suit

postman setup

Je lie d'amitié Google et est venu avec cette 1. Node.js/Express form post req.body not working 2. req.body empty on posts 4. `express` app - not able to test the `post` request using `postman`

PS L'élément surveillé dans le facteur est par défaut dans le schéma mongoose que j'ai donc il est créé, que cela fonctionne ou non.

Répondre

0

Chaque fois que je travaille avec une demande de poste express, il a été formaté comme ci-dessous (en supposant que vous utilisez MongoDB):

var express = require('express'); 
var fdbRouter = express.Router(); 
var model = require("<FILE TO IMPORT MODEL>") //This file will differ, but you need to import the model you created for films in your DB 
var FilmModel = model.Film //also depends on how you exported your model in your dbFiles. Either way you need this model as the blue print for your post request 

//I'm also assuming here that you're calling /films correctly and have it sourced as such in your app.js so you don't need /api/films as you have listed in your postman setup image 

fdbRouter.post('/films', function(req,res){ 
    var newfilm = new FilmModel() 
    newFilm.title = req.body.Title 
    newFilm.year = req.body.Year 
    newFilm.genre = req.body.Genre 
    newFilm.save(function(err, savedObject){ 
    if(err){ 
     console.log(err) 
     res.status(500).send() 
    }else{ 
     res.send(savedObject) 
    } 
    }) 
}) 

S'il vous plaît noter: cet exemple de code suppose un test db avec un schéma et modèle a été configuré et est disponible pour l'importation dans votre fichier de routes. Faites-moi savoir si cela vous met sur la bonne voie!

+0

Je l'ai essayé. Ça ne marche toujours pas. Même réponse que celle du facteur. ps. Il n'y a pas de route '/ films' ses '/ api/films'. –

+0

J'ai trouvé le coupable. Il s'avère que les cas de lettre dans le schéma étaient différents de celui dans la base de données. c'est-à-dire que ceux de la DB étaient des casquettes et celui du modèle étaient de petites capitales. Merci! –