Javascript 使用express.js在帖子上提供静态内容
我正在尝试使用Javascript 使用express.js在帖子上提供静态内容,javascript,node.js,post,express,Javascript,Node.js,Post,Express,我正在尝试使用express.js app.configure(function (){ app.use('/', express.static(__dirname + '/public')); }); 这在GET上有效,但是在POST上,我得到一个404说不能POST/ curl -X POST localhost:3001 Cannot POST / 我怎样才能避开这件事 根据虫族的回答,我想出了这个方法,我想这是一个非常糟糕的做法 app.post('/', function
express.js
app.configure(function (){
app.use('/', express.static(__dirname + '/public'));
});
这在GET
上有效,但是在POST
上,我得到一个404
说不能POST/
curl -X POST localhost:3001
Cannot POST /
我怎样才能避开这件事
根据虫族的回答,我想出了这个方法,我想这是一个非常糟糕的做法
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'));
});
这是可行的,但如果有人有更好的解决方案,我还是希望有更好的解决方案。它只提供
GET
或HEAD
请求
看
你犯了什么错误?是404吗?500美元?你的程序崩溃了吗?为什么你一开始就把一篇帖子当作一个“GET”?因为,据我所知,如果你想让facebook显示一个web应用程序,它只会用帖子请求该web应用程序。@Loourr:“它只会用帖子请求该web应用程序”—基于这些问题,这听起来并不正确,我相信是的。有没有其他方法可以通过帖子来提供静态内容?@Loourr:我真的不知道。从未使用过node.js,只是打开了他们的存储库,并通过
POST
:-DHmm找到了为什么它不能提供服务,无论如何还是要感谢您的帮助。它帮助我找到了一个似乎有效的黑客。
if ('GET' != req.method && 'HEAD' != req.method) return next();