我正在开发一个node.js项目,我需要与facebook建立连接。
我选了一些facebook库。我喜欢的最后一个是facebook-wrapper。他们的示例非常完美,但是当我添加express.static(__dirname + '/public')
时,我收到错误:Cannot POST /
。我也尝试了connect,但我也有同样的错误。
var server = express.createServer(
express.logger(),
express.bodyParser(),
express.cookieParser(),
express.session({ secret: 'secret123' }),
facebook.auth(options),
express.static(__dirname + '/public')
);
答案 0 :(得分:2)
问题是静态中间件不提供POST方法的请求。你必须明确地在路由器中处理它,如下所示:
app.post('/', function(req, res) {
res.sendfile(__dirname + '/public/index.html');
});
但是有一个拉动请求可以缓解这种情况:https://github.com/senchalabs/connect/pull/482。
答案 1 :(得分:0)
论证顺序对Connect和Express很重要。重新排列参数。尝试将'facebook.auth(options)'作为最后一个参数。