【发布时间】:2020-10-30 06:51:37
【问题描述】:
我使用 Auth0 的 Angular SDK,一切正常……除了获取令牌。现在我正在使用您可以从我的仪表板手动获取的令牌。
Auth0Service 包含一个名为 getAccessTokenSilently 的方法,但该令牌无用且很小(不是正确的)我看到我的应用程序将请求加载到 Auth0。我不明白,因为无论如何我都没有编程那个调用......但是那个调用有令牌!
如何获得不记名令牌?
编辑代码示例 但是......改变,关键是console.log不包含正确的密钥,或者至少密钥不能访问后端。
constructor(private auth0Service : Auth0Service) { }
getToken = () => {
this.auth0Service.getAccessTokenSilently().subscribe(z => console.log(z));
}
【问题讨论】:
-
您能否提供一个代码示例,您正在使用此
getAccessTokenSilently方法? -
是的,我确实得到了一把钥匙,但我不相信它是正确的。我尝试将它用于后端,但它不起作用
-
我在 github 上浏览了他们的代码,看起来他们使用的方法与您尝试过的方法相同。他们在内部使用它来附加这个令牌以在他们的
HttpInterceptor中请求,所以如果它在应用程序的其他部分工作,它也应该在你的代码中工作。您已经通过身份验证了吗? -
是的,对象 auth0Service 的所有其他方法都可以正常工作。像 isAuthenticated$ 一样,当我登录时返回 true,未登录时返回 false。此外,如果没有给出密钥,后端的数据是无法访问的。可以在仪表板中找到的用于测试 api 的不记名密钥工作正常。