首页 > 解决方案 > Slack App安装中的环境变量?

问题描述

Slack App 安装过程中是否有环境变量的概念?

这是一个虚构的用例。

假设我们有一家位于 3 个地区的公司。有一个 REST API 可以通过这些端点搜索区域中的员工:

GET https://us.cars.com/findemployee
GET https://uk.cars.com/findemployee
GET https://it.cars.com/findemployee

假设我们开发了一个带有 Slash Command 功能的 Slack 应用程序来搜索员工,例如:

/findemployee

当用户在他的工作区安装 Slack App 时,有没有办法让用户选择他所属的区域?然后以某种方式将其作为环境变量存储在 Slack App 安装中。这样当用户执行斜杠命令/findemployee时,它将调用相应的 REST API url。

例如,如果用户在安装过程中选择了 uk 地区,那么 slash 命令/findemployee将向GET https://uk.cars.com/findemployee.

谢谢你。

标签: slackslack-api

解决方案


是的。应用程序安装过程完全由您的应用程序控制,应用程序代码在您自己的(虚拟)服务器上运行(不是由 Slack 运行)。因此,如果您愿意,当然可以使用环境变量。

但是,从应用程序设计的角度来看,我建议将此类信息存储在数据库中,例如通过为数据库中的每个工作区设置一个对象。然后,该对象将包含特定工作区(或用户)的选定区域。

一旦用户发出斜杠命令,Slack 将向您的应用程序发送一个请求,其中包含有关当前用户和工作区的所有信息。然后,您的应用程序可以根据该输入决定调用正确的 API,例如针对每个区域。


推荐阅读