我使用passport.js
和passport-facebook
登录我的Node.js web应用程序。这只是一个简单的登录请求(每次相同的用户登录时,我只对相同的唯一id感兴趣)。这个应用程序已经运行了一段时间了。然而,Facebook刚刚提醒我,我正在使用Graph API 2.3,它将在7月10日被淘汰。
使用passport-facebook
时,在何处/如何指定图形API版本
Facebook的电子邮件写道:“我们估计一个端点可能会受到影响”。我想知道passport-facebook
使用什么会崩溃。数以万计的passport-facebook
用户会在7月10日突然停止使用吗?
发布于 2018-06-08 04:49:00
要回答您的主要问题,您可以在策略选项中指定profileURL
:
const strategy = new FacebookStrategy({
clientID: FACEBOOK_APP_ID,
clientSecret: FACEBOOK_APP_SECRET,
callbackURL: CALLBACK_URL,
profileURL: 'https://graph.facebook.com/{API_VERSION}/me'
},
(accessToken, refreshToken, profile, cb) => { ... }
);
这似乎没有任何文档记录;我必须在source code中查找才能找到它。默认值为'https://graph.facebook.com/v2.5/me'
。
请务必检查您的app settings,因为它们具有用于指定API版本的控件。
发布于 2019-10-11 19:11:43
只需在构造函数的graphAPIVersion
属性中指定版本:
passport.use(new FacebookStrategy({
graphAPIVersion: "v4.0",
clientID: process.env.FACEBOOK_CLIENT_ID,
clientSecret: process.env.FACEBOOK_CLIENT_SECRET,
callbackURL: process.env.CALLBACK_URL
}
来自源代码:https://github.com/jaredhanson/passport-facebook/blob/master/lib/strategy.js#L50
https://stackoverflow.com/questions/44525313
复制相似问题