node.js - express.static和facebook-wrapper - 无法POST

时间:2012-06-14 19:31:18

标签: facebook node.js post

我正在开发一个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')
); 

2 个答案:

答案 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)'作为最后一个参数。