Днем, в поисках способа получения адреса электронной почты пользователей и их аватара с помощью passport-slack.Код ниже, я считаю, просто получает основную информацию.Когда я сохраняю профиль в профиле, я получаю имя пользователя, идентификатор, команду, поставщика и отображаемое имя.Мне интересно, как я могу легко добавить также получение своей электронной почты и аватара.Не нашли ни одного полезного примера или примера, которые я могу понять.Приведенный ниже код был на самом деле из видео, которое я нашел для Google в Google, и я просто переключил его на слабину.
// Configure the Slack Strategy
passport.use(
new SlackStrategy({
callbackURL: "/auth/slack/redirect",
clientID: keys.slack.clientID,
clientSecret: keys.slack.clientSecret,
scope: ['identity.basic', 'identity.email', 'identity.avatar']
}, (accessToken, refreshToken, profile, done) => {
console.log(profile);
// Check if user already exist in DB
User.findOne({username: profile.displayName}).then((currentUser) => {
if(currentUser){
// already have the user
// console.log('User is', currentUser);
done(null, currentUser);
} else {
// If not, create new user in DB
new User({
username: profile.displayName,
slackid: profile.id
}).save().then((newUser) => {
// console.log("new user created: " + newUser);
done(null, newUser);
});
}
});
}));