如何区分每个 Slack 应用安装?
How to distinguish each Slack app installation?
我正在使用 Slack Bolt JS api。可以在 http://example.com/slack/install URL 之后成功将应用程序安装到 slack 工作空间中。我正在尝试将其集成到 SaaS 中。问题是如何区分 Slack 应用程序安装以及如何确定哪个 Slack 应用程序安装属于哪个 SaaS 用户?我的猜测是一些信息应该在 OAuth 流程中注入,但现在确定如何使用 Slack Bolt SDK 来做到这一点。
const app = new App({
installerOptions: {
installPath: '/slack/install',
redirectUriPath: '/slack/oauth_redirect'
},
// token, etc
});
您似乎需要使用 OAuth 和您自己的 installationStorage
实施身份验证。看看这个doc
您需要完成的基本步骤是:
- 您需要使用
SLACK_CLIENT_ID
、SLACK_SECRET_ID
和 SLACK_SIGNING_SECRET
启动您的应用
- 包括您的自定义回调以处理应用程序安装(
installationStore
选项)。
- 在上面的示例中,您需要将
database.set
和 database.get
替换为您自己的数据库查询、服务器 API 或其他内容。 Here 你可以看到一个完整的例子。
完成此设置后,Slack 将从许多不同的工作区调用您的应用程序,并且将恢复正确的令牌 installationStore.fetchInstallation
。这将在调用事件或消息处理程序之前发生。
PS:您不应在应用程序的初始化中包含令牌。稍后设置。
我正在使用 Slack Bolt JS api。可以在 http://example.com/slack/install URL 之后成功将应用程序安装到 slack 工作空间中。我正在尝试将其集成到 SaaS 中。问题是如何区分 Slack 应用程序安装以及如何确定哪个 Slack 应用程序安装属于哪个 SaaS 用户?我的猜测是一些信息应该在 OAuth 流程中注入,但现在确定如何使用 Slack Bolt SDK 来做到这一点。
const app = new App({
installerOptions: {
installPath: '/slack/install',
redirectUriPath: '/slack/oauth_redirect'
},
// token, etc
});
您似乎需要使用 OAuth 和您自己的 installationStorage
实施身份验证。看看这个doc
您需要完成的基本步骤是:
- 您需要使用
SLACK_CLIENT_ID
、SLACK_SECRET_ID
和SLACK_SIGNING_SECRET
启动您的应用
- 包括您的自定义回调以处理应用程序安装(
installationStore
选项)。 - 在上面的示例中,您需要将
database.set
和database.get
替换为您自己的数据库查询、服务器 API 或其他内容。 Here 你可以看到一个完整的例子。
完成此设置后,Slack 将从许多不同的工作区调用您的应用程序,并且将恢复正确的令牌 installationStore.fetchInstallation
。这将在调用事件或消息处理程序之前发生。
PS:您不应在应用程序的初始化中包含令牌。稍后设置。