【问题标题】:OAuth 2 and the Slack APIs for posting imagesOAuth 2 和用于发布图像的 Slack API
【发布时间】:2018-02-19 15:05:04
【问题描述】:

第一个问题:因此,我正在尝试使用 Slack API 中的 files.upload API 调用将图像发布到特定的 Slack 频道。我有一个client_id 和一个client_secret。我只想将其用于我的团队使用 slack 进行交流。如果不通过 OAuth 2 获取访问令牌,这可能吗?

第二个问题:在我尝试通过 OAuth 2 时,我已将我的 client_id 放入 python 字典,然后 json.dumps() 它。我将 id 存储在“client_id”字段中,但返回的消息是“OAuth 消息:请指定 'client_id'” 为什么这是一个错误?我应该将它命名为“client_id”以外的其他名称吗?

编辑:我找到了问题 2 的答案。我没有收到预期的结果,但只是发送字典而不变成 JSON 对象解决了 client_id 问题。

【问题讨论】:

    标签: python oauth-2.0 slack slack-api


    【解决方案1】:

    您始终需要访问令牌才能使用 Slack API 上传文件。

    但您可以将 Slack 应用安装到您自己的 Slack 工作区,而无需自己完成 OAuth 流程。只需创建您的 Slack 应用程序并转到您的应用程序的“安装应用程序”页面。您可以在Manage your apps 下找到。

    示例截图:

    另一个选择(虽然不推荐)是给我们一个遗留令牌。你可以在这里创建它: https://api.slack.com/custom-integrations/legacy-tokens

    【讨论】:

    • 好的,为了清楚起见,我可以转到频道的设置图标,然后转到“添加应用程序”按钮,这样我就不需要通过 OAuth 流程了吗?跨度>
    • 不完全。它与渠道无关。您需要将您的 Slack 应用程序(与您提到的客户端 ID 相同)安装到您的 Slack 工作区。
    • 太棒了,谢谢!最后一次跟进。这样做会给我一个新的访问令牌,还是我可以将 files.upload 与我的 client_id 一起使用?
    • 我很抱歉,但我不确定我的编辑是否通知了您。这样做会给我一个我使用的新访问令牌,还是我会只使用我的 client_id/client_secret 来发布到工作区?我只问是因为其他人创建了该应用程序,然后要求我编写该应用程序。我只需要知道向他们要什么。
    • API 不能直接使用客户端 id/secret。你总是需要一个访问令牌。不过,您可以通过使用客户端 ID/秘密来通过 Oauth。如果其他人创建了该应用程序,请他们将您添加为“协作者”,这样您就可以访问 Slack 应用程序。是的,您将获得一个带有“将应用程序安装到工作区”的新访问令牌。
    猜你喜欢
    • 1970-01-01
    • 2016-11-27
    • 2020-12-05
    • 2016-09-08
    • 1970-01-01
    • 1970-01-01
    • 2014-08-01
    相关资源
    最近更新 更多