2016-11-15 74 views
0

我是MEAN Stack的新手,已經在Mean stack上開發了一些應用程序。但是我堅持使用我的app.post()方法。瀏覽器的控制檯給出了一個405錯誤說該方法是不允許的。請幫助我。app.post()方法在nodejs中不工作

在這裏,我的服務器文件代碼中的JavaScript

  var app    =express(); 
      var mongoose   =require('mongoose'); 
      var bodyParser  =require('body-parser'); 


     var urlencodedparser=app.use(bodyParser.urlencoded({extended:false})); 
     var jsonParser = bodyParser.json() 
     app.get('/',function(request,response){ 

     response.sendFile(__dirname+'/clients/views/index.html'); 
     }); 

     app.post('/api/meetups',jsonParser,function(req,res){ 


     console.log(req.body); 
    }); 

    var port=process.env.PORT || 3000; 
    app.listen(port,function(){ 

    console.log('Listening to the server at port '+port); 
    }); 
+0

請說明你是如何向post方法發出請求的。它是一個API調用,一個表單等? – Soviut

回答

1

基於Application.post() Express文檔上,我想你也許想從更改後聽衆的第一行:

app.post('/api/meetups',jsonParser,function(req,res){ 
    console.log(req.body); 
}); 

對此:

app.post('/api/meetups',function(req,res){ 
    console.log(req.body); 
}); 

我不認爲這需要額外的參數呃你指定了與JSON解析相關的東西。如果您需要解析JSON你可能要考慮使用body-parser,像這樣的中間件(你會把上面的帖子聽衆):

var bodyParser = require('body-parser'); 
app.use(bodyParser.json()); 

祝你好運!