FacebookGraphAPIError: (#210) 此调用需要页面访问令牌

Nim*_*hew 1 node.js facebook-graph-api passport-facebook passport.js

我正在使用 Passport-Facebook 策略进行身份验证。请在下面找到代码:

new FacebookStrategy(
      {
        clientID: authConfig.facebookAuth.clientID,
        clientSecret: authConfig.facebookAuth.clientSecret,
        callbackURL: authConfig.facebookAuth.callbackURL,
        profileURL: "https://graph.facebook.com/v2.10/me",
        authorizationURL: "https://www.facebook.com/v2.10/dialog/oauth",
        tokenURL: "https://graph.facebook.com/v2.10/oauth/access_token",
        profileFields: ["email", "profile_pic", "gender"]
      },
      function(accessToken, refreshToken, profile, done) {
Run Code Online (Sandbox Code Playgroud)

这给了我以下错误:

FacebookGraphAPIError: (#210) This call requires a Page access token.
Run Code Online (Sandbox Code Playgroud)

如何传递页面访问令牌?或者这与其他事情有关?

Nim*_*hew 9

我找到了问题所在。这与访问令牌无关。我的一些 profileFields 参数无效。修改后的工作代码如下:

new FacebookStrategy(
      {
        clientID: authConfig.facebookAuth.clientID,
        clientSecret: authConfig.facebookAuth.clientSecret,
        callbackURL: authConfig.facebookAuth.callbackURL,
        profileFields: [
          "id",
          "displayName",
          "email",
          "gender",
          "picture.type(large)"
        ]
      }
Run Code Online (Sandbox Code Playgroud)