javascript 默认护照-facebook

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 默认护照-facebook相关的知识,希望对你有一定的参考价值。

passport.use(new FacebookStrategy({
      clientID: process.env.FACEBOOK_APP_ID,
      clientSecret: process.env.FACEBOOK_APP_SECRET,
      callbackURL: `${process.env.FACEBOOK_CALLBACK_URL}`,
      profileFields: ['id', 'emails', 'name']
    },
    function(accessToken, refreshToken, profile, done) {
      console.log(profile);
      User.findOne({ email: profile.emails[0].value },
          function(err, user) {
            // handle immediate errors
            if (err) return catchErrors(err);
            // If a user with an email === google email, check for google.id
            if (user) {
              // if user's google schema info is undefined, set dat shit
              if (user.facebook.id === undefined) {
                user.facebook.id = profile.id;
                user.facebook.token = accessToken;
                user.facebook.email = profile.emails[0].value;
                user.facebook.name = profile.displayName;
              }
              if (user.name === undefined) {
                user.name = profile.givenName + profile.familyName;
              }
              user.save();
              return done(null, user);
            } else { // If no user exists with email === twitter email, create new User
              const user = new User();
              // local data
              user.name = profile.displayName;
              user.email = profile.emails[0].value;
              user.facebook.id = profile.id;
              user.facebook.token = accessToken;
              user.facebook.name = profile.displayName;
              user.facebook.email = profile.emails[0].value;
              console.log(user);
              user.save(function(err) {
                if (err) console.log(err);
                return done(err, user);
              });
            }
          }
      );
    }
));

以上是关于javascript 默认护照-facebook的主要内容,如果未能解决你的问题,请参考以下文章

javascript 默认护照 - 推特

javascript 默认护照本地

混合护照-facebook和护照-jwt的最佳方法是啥?

Facebook iOS SDK 和护照-facebook 身份验证

使用带护照本地的护照Facebook策略时无法将用户序列化到会话中

Facebook OAuth 安全使用护照-facebook