0

https://github.com/amachang/facebook-node-sdk 决定使用这个模块为 node.js 构建我的 facebook 集成登录,如下所示:

var express = require('express');

var Facebook = require('facebook-node-sdk');

var app = express.createServer();
app.configure(function () {
  app.use(express.bodyParser());
  app.use(express.cookieParser());
  app.use(express.session({ secret: 'foo bar' }));
  app.use(Facebook.middleware({ appId: 'YOUR_APP_ID', secret: 'YOUR_APP_SECRET' }));
});

app.get('/', Facebook.loginRequired(), function (req, res) {
  req.facebook.api('/me', function(err, user) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello, ' + user.name + '!');
  });
});

如何添加额外的权限,如“电子邮件”?

4

3 回答 3

1

看一下Facebook Node SDK 中的getLoginUrl方法。您可以scope在此处提供一个参数来指定email权限。有关可用权限的列表,请参阅权限。

于 2012-05-29T15:55:37.303 回答
1
app.get('/', Facebook.loginRequired({scope: 'email'}), function (req, res) {
      /*-----*/
});
于 2013-10-02T17:38:53.740 回答
0

嗯您不需要编辑此文件:) 您所要做的就是将范围添加到您的配置中,如下所示:

app.use(Facebook.middleware({ appId: 'YOUR_APP_ID', secret: 'YOUR_APP_SECRET', scope 'YOUR_SCOPE' }))

然后将此配置传递给 getLoginUrl 函数

于 2013-06-25T11:40:31.743 回答