slack - 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
.
谢谢你。
解决方案
是的。应用程序安装过程完全由您的应用程序控制,应用程序代码在您自己的(虚拟)服务器上运行(不是由 Slack 运行)。因此,如果您愿意,当然可以使用环境变量。
但是,从应用程序设计的角度来看,我建议将此类信息存储在数据库中,例如通过为数据库中的每个工作区设置一个对象。然后,该对象将包含特定工作区(或用户)的选定区域。
一旦用户发出斜杠命令,Slack 将向您的应用程序发送一个请求,其中包含有关当前用户和工作区的所有信息。然后,您的应用程序可以根据该输入决定调用正确的 API,例如针对每个区域。
推荐阅读
- java - MVC Spring Java - 显示图片存储为类中的字段
- schema.org - [BreadcrumbList JSON LD + Schema.org] 中是否隐含主页?
- java - 如何在jsp应用程序中将servlet加载为第一页管理其他servlet
- python-3.x - 从 docker 访问 google drive api
- azure-devops - Azure devops - 准备自托管测试代理
- html - 如何将 p 标签与单选按钮对齐
- pandas - Creating another column condition on dates in the index
- html - 并排视差图像,同时保持纵横比
- version - 将 pine 脚本版本 2 代码转换为版本 4
- swift - 动画 UIView 总是在左上角,即使中心在其他地方