对于我的本地测试,我试图从 slack 获取并保存用户的访问令牌。
第一步是获得用户的许可,我试图将用户重定向到以下 URL -
https://slack.com/oauth/v2/authorize?scope=commands,bot&client_id=<MY_CLIENT_ID>&redirect_uri=https://localhost:3000/slack-verify/
Run Code Online (Sandbox Code Playgroud)
然后该请求将用户(当前是我)重定向到
https://<MY-WORKSPACE>.slack.com/oauth?client_id=<CLIENT_ID>&redirect_uri=https%3A%2F%2Flocalhost%3A3000%2Fslack-verify%2F&state=&scope=commands%2Cbot&user_scope=&granular_bot_scope=1&team=&install_redirect=&single_channel=0&tracked=1
Run Code Online (Sandbox Code Playgroud)
理想情况下,它应该返回 GET 参数中的代码,但它在屏幕上显示错误 -
<APP NAME> could not be installed. Error details
Invalid permissions requested
Run Code Online (Sandbox Code Playgroud)
这里有什么问题吗?
编辑:也将 localhost 替换为 ngrok URL,但这也不起作用。
重现步骤
https://slack.com/oauth/v2/authorize?scope=commands,bot&client_id=<MY_CLIENT_ID>&redirect_uri=https://localhost:3000/slack-verify/
Run Code Online (Sandbox Code Playgroud)
只需输入您的客户端 ID 并重定向 uri 本地(如果有)。
重定向到您的ngrok地址通常效果很好。
为了让它发挥作用,你需要
ngrok在呼叫 Slack 时包含您的个人地址。它应该看起来像这样链接:
https://slack.com/oauth/v2/authorize?scope=commands,bot&client_id=<MY_CLIENT_ID>&redirect_uri=https://12345678.eu.ngrok.io/slack-verify/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3858 次 |
| 最近记录: |