首页 > 解决方案 > 如何使用 Bolt for JavaScript(Node.JS) 获取 Slack 机器人的当前用户电子邮件地址

问题描述

就上下文而言,我正在使用 Bolt for JavaScript 框架来开发 Slack 机器人。我有一个工作区,我是唯一的成员。

在应用程序主页中,我需要检索当前用户的电子邮件地址,但我不知道该怎么做。

用户的 WebAPI 方法,例如 users.profile.get 和 users.identity,需要用户令牌,我想我需要获取当前用户的用户令牌。

关于如何从后端检索用户令牌的任何想法?建议将不胜感激。

标签: javascriptnode.jsslackslack-apibolt

解决方案


我建议使用机器人令牌而不是用户令牌来调用users.infohttps://api.slack.com/methods/users.info)。您需要请求users:readusers:read.email范围,以便在 API 调用中返回电子邮件。当您在 Workspace 上安装您的应用程序时,您的机器人令牌将出现在您的 Developer Config 站点 ( https://api.slack.com/apps ) 的 OAuth & Permissions 页面中。您的应用程序应该正在监听该app_home_opened事件。当用户打开 App Home 时,user_id将在事件负载中返回。然后,您可以使用它user_id来调用users.info并获取用户电子邮件。


推荐阅读