【问题标题】:What is a 'redirect URL' to distribute Slack bot?什么是分发 Slack 机器人的“重定向 URL”?
【发布时间】:2019-11-14 08:40:00
【问题描述】:

我创建了一个托管在 Heroku 上的 Python Slack 机器人(它在我的个人工作区中运行良好),但现在希望将其分发到其他工作区。

在 Slack 的“管理分发”页面上,它请求至少一个重定向 URL。我不明白这是什么。例如:如果我的机器人的 Heroku 域是 https://my-awesome-bot.herokuapp.com/ 它的重定向 URL 是什么?

【问题讨论】:

    标签: python heroku slack slack-api


    【解决方案1】:

    重定向 URL 是您网站的一部分,用于将您的 Slack 应用安装到其他工作区(例如,通过“添加到 Slack”按钮),因此需要启用分发。

    Slack 应用程序的安装是通过 OAuth 2.0 协议完成的。它的工作原理是,在工作区的用户通过提供他的 Slack 凭据授权安装您的应用程序后,Slack 会将用户重定向回您的网站(使用提供的重定向 URL),以便您的应用程序可以获得新的令牌特定的工作空间。

    您可以在 Slack 应用管理页面的 OAuth 2.0 和权限部分添加重定向 URL。确切的 URL 取决于您网站的结构。

    请参阅文档here,了解 OAuth 2.0 流程如何与 Slack 配合使用。

    【讨论】:

    • 那么对于 Heroku,重定向 URL 是否与域 URL 相同?我不知道 Heroku 的结构。
    • 这取决于你如何设计你的应用程序,而不是 Heroku,它只是一个云平台。通常你会有一个专门的重定向路由(例如/login),但它可以是任何东西。我建议阅读 OAuth 如何与 Slack 一起工作。
    • 我确实浏览了 OAuth 文档。但它是关于使用网络钩子的。我什么都不用。问题是,我什至无法进入我的域 - 因为我的机器人在工作人员测功机上运行,​​所以显示为“应用程序错误”。该机器人非常适合我自己的工作空间,但我希望允许其他人使用它。有什么想法吗?
    • 是的,您需要一个网络挂钩才能使 Oauth 正常工作。你需要某种存储来保存令牌。这是唯一的方法。但它不必像您的应用一样在同一个域上运行。
    • 我想我已经回答了您发布的问题。如果没有,请告诉我。否则,如果您可以将此答案标记为解决方案,我将不胜感激,以便我们可以关闭此问题。泰!
    猜你喜欢
    • 2020-06-08
    • 1970-01-01
    • 2017-07-27
    • 2019-10-28
    • 2020-04-18
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多