Where/how 使用 passport.js 指定 API 版本
Where/how to specify the API version using passport.js
我正在使用 passport.js
和 passport-facebook
登录我的 Node.js 网络应用程序。这只是一个简单的登录请求(每次同一用户登录时,我只对相同的唯一 ID 感兴趣)。此应用 运行 一段时间以来一直很好。但是,Facebook 刚刚提醒我,我正在使用 Graph API 2.3,它将在 7 月 10 日过时。
Where/how 使用 passport-facebook
时是否指定图形 API 版本?
Facebook 电子邮件显示 "We estimate one endpoint may be impacted"。我想知道 passport-facebook
会破坏什么用途。 passport-facebook
的几万人会不会也在7月10日突然断网?
要回答您的主要问题,您可以在策略选项中指定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 版本的控件。
只需在构造函数的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
我正在使用 passport.js
和 passport-facebook
登录我的 Node.js 网络应用程序。这只是一个简单的登录请求(每次同一用户登录时,我只对相同的唯一 ID 感兴趣)。此应用 运行 一段时间以来一直很好。但是,Facebook 刚刚提醒我,我正在使用 Graph API 2.3,它将在 7 月 10 日过时。
Where/how 使用 passport-facebook
时是否指定图形 API 版本?
Facebook 电子邮件显示 "We estimate one endpoint may be impacted"。我想知道 passport-facebook
会破坏什么用途。 passport-facebook
的几万人会不会也在7月10日突然断网?
要回答您的主要问题,您可以在策略选项中指定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 版本的控件。
只需在构造函数的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