【问题标题】:Slack Oauth/Authorize API CallSlack Oauth/授权 API 调用
【发布时间】:2016-09-08 16:05:22
【问题描述】:

我是 OAuth(和 Slack API)的新手,对 Slack 的OAuth Flow 的第 1 步有疑问。

它说“您的网络或移动应用程序应将用户重定向到以下网址:https://slack.com/oauth/authorize”。起初我认为我应该做一个 XHR 请求,但后来明白这不是我想要的。

经过更多研究,我发现最初的 oauth/authorize 请求应该作为浏览器中的直接请求发送。我的问题是我无法开始想象应该如何做到这一点。我一直在引用这个tutorial 的部分内容(向下滚动到“Web 服务器应用程序”部分),但这并不能帮助我理解 oauth/authorize 请愿书。

所以基本上,我正在找人更好地向我解释最初的请愿应该如何提出。非常感谢任何和所有帮助!

提前致谢

【问题讨论】:

  • 您正在构建网络应用程序吗?只需给用户一个超链接以单击以转到/authorize 或返回重定向 (302)。在移动应用中,您可能希望打开默认浏览器或嵌入式 Web 视图。
  • 目前它只是一个脚本(js)文件。我不是在构建网络应用程序。我可以在不构建 Web 应用程序并只使用基本脚本文件的情况下实现这一目标吗?
  • 我不这么认为。 Slack 的 OAuth 流程仅支持重定向到 URL,因此要执行 OAuth,您需要一个可以接收重定向的 Web 服务器。
  • @smarx 感谢您的指导,非常感谢。这非常有帮助!

标签: javascript node.js oauth-2.0 authorization slack-api


【解决方案1】:

您应该查看Slack button 文档。

在那里你会找到一个你的 slackapp 的例子,比如:

<a href="https://slack.com/oauth/authorize?scope=incoming-webhook&client_id=CLIENT_ID">
   <img alt="Add to Slack" height="40" width="139" 
   src="https://platform.slack-edge.com/img/add_to_slack.png" />
</a>

此按钮要求对包含传入 webhook 的 slackapp 进行授权,您可以在范围内添加更多所需的功能,用逗号分隔它们。 scope=incoming-webhook,commands,bot,channels:read

在您的教程链接中,当它说您应该将它们链接到 https://oauth2server.com/auth?response_type=code&amp;client_id=CLIENT_ID&amp;redirect_uri=REDIRECT_URI&amp;scope=photos

它是指将其包装到用户的按钮中:

<a href="https://oauth2server.com/auth?response_type=code&client_id=CLIENT_ID&redirect_uri=REDIRECT_URI&scope=photos">
   Auth Button
</a>

希望这有助于澄清/oauth/authorize的用法

【讨论】:

    猜你喜欢
    • 2020-10-06
    • 2020-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-11
    • 2017-09-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多