Node.js 如何使用slack scope来包括电子邮件和化身
下午,寻找一种方法来检索用户的电子邮件地址和他们的头像与护照松弛。下面的代码我相信只是得到了基本信息。当我在console.log中记录配置文件时,我会得到用户名、id、团队、提供者和显示名称。我想知道我怎样才能很容易地加入他们的电子邮件和头像。没有发现任何有用的例子或我似乎能掌握的例子。下面的代码实际上来自我在Google上为oauth找到的一个视频,我刚刚将它切换到slackNode.js 如何使用slack scope来包括电子邮件和化身,node.js,passport.js,slack-api,Node.js,Passport.js,Slack Api,下午,寻找一种方法来检索用户的电子邮件地址和他们的头像与护照松弛。下面的代码我相信只是得到了基本信息。当我在console.log中记录配置文件时,我会得到用户名、id、团队、提供者和显示名称。我想知道我怎样才能很容易地加入他们的电子邮件和头像。没有发现任何有用的例子或我似乎能掌握的例子。下面的代码实际上来自我在Google上为oauth找到的一个视频,我刚刚将它切换到slack // Configure the Slack Strategy passport.use( new SlackS
// 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);
});
}
});
}));
看起来代码不错,但为了向用户请求化身和电子邮件,我不得不从SlackAPI网站添加代码。登录后,转到Oauth和Permissions,并向下滚动到SelectPermissionscopes部分。有一个下拉列表,可以将作用域添加到列表中。对我来说,我还必须包括indentity.basic,以便使用头像和电子邮件范围……好时光