我是MEAN Stack的新手,并且已经在Mean stack上开发了一些应用程序。但我坚持使用我的app.post()方法。浏览器的控制台出现405错误,说明该方法是不允许的。请帮助我。
这里;是我在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 :(得分: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());
祝你好运!