你好,所以我设置了一个不和谐的应用程序和 OAUTH 登录。我需要获取用户 ID,但无论我尝试什么,都会出现问题。我读了这个,但对我来说没有任何意义。它如何知道它是什么用户。它说“401:未经授权”我应该怎么做才能授权。我也得到了访问令牌;刷新令牌谢谢
Kyl*_*ast 12
我遇到了同样的问题,只是想出了解决方案!
成功收到访问令牌后,您需要向以下端点执行 http 请求:
https://discordapp.com/api/users/@me
标题设置为:
Authorization: Bearer ${ACCESS_TOKEN}
然后,您应该会收到以下响应:
data: {
avatar: ....,
discrimnator: ....,
email: ....,
flags: ....,
id: ....
}
Run Code Online (Sandbox Code Playgroud)
您还将获得一些其他数据点。但那些是大的。注意:如果您在收到访问令牌时将其包含在范围内,您将只会收到电子邮件字段。您可以使用从此调用中收到的 id 来访问 Discord 文档中引用的 users/:userId 端点。
如果您有兴趣,这是我的实际代码:
fetchUser: (data) =>
axios
.get(
`https://discordapp.com/api/users/@me`,
{headers: {Authorization: `Bearer ${data.access_token}`}}
)
Run Code Online (Sandbox Code Playgroud)
希望有帮助!
归档时间: |
|
查看次数: |
5255 次 |
最近记录: |