如何解决使用oauth2从Discord API获取信息
首先,我是Angular 10.0和oauth2的新手,所以我正在努力学习这一点,因此,如果听起来有些笨拙,请提前抱歉。
我的目标是至少获取使用discord登录的用户的用户名。为此,我使用this library
const authConfig: AuthConfig = {
loginUrl: `https://discord.com/api/oauth2/authorize`,tokenEndpoint: 'https://discord.com/api/oauth2/token',redirectUri: `http://localhost:4200`,clientId: 'myId',scope: 'identify',responseType: 'code',strictDiscoveryDocumentValidation: false,oidc: false,disablePKCE: false
};
this.oauthService.configure(authConfig);
this.oauthService.tryLoginCodeFlow();
connect(){
this.oauthService.initLoginFlow();
}
所以这部分工作得很好,我得到了AccessToken,但是随后尝试尝试获取信息的任何东西,例如:console.log(this.oauthService.loadUserProfile());
我收到此错误:加载用户信息时出错TypeError:req.url为空
因此,我想知道是否需要做其他事情以连接到API来从API获取信息,但是我不知道该怎么做。
最诚挚的问候。
解决方法
我解决了我的问题,
使用不和谐API的原因是它不使用OpenId Connect。
但是取而代之的是,我必须使用GET请求对apiLink +'/ users / @ me'进行设置,同时将我的accessToken设置为授权部分。
https://discord.com/developers/docs/resources/user#get-current-user
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。