我尝试使用express.js
app.configure(function (){
app.use('/', express.static(__dirname + '/public'));
});
这适用于GET
但是POST
我得到404
说Cannot POST /
curl -X POST localhost:3001
Cannot POST /
我怎样才能解决这个问题?
根据zerkms的回答,我想出了这个黑客,我想这是非常糟糕的做法。
app.post('/', function(req, res, next){
try {
if(req.url === '/'){
req.method = 'GET'
}
} catch(err){
res.send(500, err)
res.end()
}
next()
});
app.configure(function (){
app.use('/', express.static(__dirname + '/public'));
});
这样可行,但如果有人的话,我仍然想要一个更好的解决方案。
答案 0 :(得分:2)
它仅提供GET
或HEAD
次请求。
请参阅https://github.com/expressjs/serve-static/blob/master/index.js#L51
if ('GET' != req.method && 'HEAD' != req.method) return next();