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