0

根据 Auth0 SPA 应用程序定义(使用 Angular),我有一个 SPA 应用程序。我使用 Auth0 作为客户端登录机制。我的应用程序允许用户使用两个服务提供商、IDP 或社交关系登录:Facebook or Google. (鉴于我已经为这些 IDP 域下的应用程序提供了客户端 ID 和机密)https://auth0.com/docs/connections。如果用户成功通过身份验证,我的应用程序将返回一个包含访问代码的数组,该访问代码可用于调用 IDP 的 API ( https://auth0.com/docs/tokens/identity-provider-access-tokens )。

成功案例:用Facebook登录后。我可以检索访问令牌并调用 Facebook 的图形 API。

问题:使用 Google 登录时,我可以检索访问令牌。但是,当我使用该访问令牌调用 Youtube Data v3 API 时,我收到一个:

 Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.

我试过的:

我想回答的问题

我想出了解决方法,但不幸的是它们影响了用户体验。我想知道 getTokensSilently 返回什么,令牌是什么?

我必须进行哪些更改才能使用 IDP 返回的访问令牌(在身份数组下)来调用 Youtube Data v3 API?

4

1 回答 1

0

回答你的问题,

  1. getToken 在用户认证成功后由 auth0 静默返回一个令牌。您可以将该令牌用于
  • 发送到后端进行授权。
  • 从 auth0 获取用户信息。
  1. 要为 youtube Data API 使用令牌,您需要Youtube在仪表板 > 连接 > 社交中签入权限。
于 2020-09-25T08:33:13.057 回答