jse*_*gal 4 java ngrok slack-api slack slack-commands
好的,让我们搭建舞台。
\n我正在尝试使用 Java JDK 14、gradle 和 ngrok 构建一个 slack 应用程序。(以及 Slack 的 SDK 模块 Bolt)
\n到目前为止,我已经能够非常轻松地包含所需的依赖项,并且我的问题似乎与我的依赖项管理完全无关。它建立了。至少,它可以构建。
\nslack命令配置:
\n
一些笔记,因为由于某种原因无法整理思绪。
\n我确保每次刷新 ngrok 时都会更改请求 URL。
\n我已验证我的 slack 机器人令牌和我的 slack 签名密钥是正确的。
\n主要程序代码:
\npackage SlackApp;\n\nimport com.slack.api.bolt.App;\nimport com.slack.api.bolt.jetty.SlackAppServer;\n\npublic class Program {\n\n public static void main(String[] args) throws Exception {\n App app = new App();\n\n app.command("/echo", (req, ctx) -> {\n return ctx.ack(":wave: testing");\n });\n\n SlackAppServer server = new SlackAppServer(app);\n \n server.start();\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n出于某种原因,每当我在开发工作区中使用斜杠命令时(我还没有开始对多个工作区进行 oAuth,我只是测试一些东西),记录器就会显示此信息(我已经在 google 上搜索过,但还没有找到了任何合适的解决方案):
\nINFO com.slack.api.bolt.middleware.builtin.RequestVerification - Invalid signature detected \n- v0=ee1b7da78a098a8b974c119873b1782c843b8bef1dce192b68ea0df4ccf86b23\nRun Code Online (Sandbox Code Playgroud)\n这就是我所在的地方。Slack 的文档称构建 Slack 应用程序的过程如下:
\n您的应用程序需要执行的所有操作来处理斜杠命令请求:
\n验证来自 Slack 的请求
\n解析请求正文并检查该命令是否是您\xe2\x80\x99d\n想要处理的命令
\n建立回复消息或做任何你想做的事情
\n使用 200 OK 作为确认响应 Slack API 服务器
\n我实际上并没有验证来自 slack 的请求,但如果我只是玩玩,我认为没有必要这样做。您能提供一些见解吗?
\n我面临着完全相同的问题,这对我有用:
如果您在 IDE 中运行项目,则必须弄清楚如何在 IDE 中设置运行时环境变量。
我用的是intelliJ。设置环境变量:
不,您不需要实际验证请求等,因为 Bolt 中间件作为内置请求验证类为您完成此操作
您的应用程序不需要手动返回任何响应,一切都由 Bolt 本身处理。只需设置 Env 变量就足够了!
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
2765 次 |
| 最近记录: |