微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Flutter 的 google_sign_in 中获取 JWT 格式的访问令牌?

如何解决如何在 Flutter 的 google_sign_in 中获取 JWT 格式的访问令牌?

我正在验证对在 GCP 云端点后面的 GCP 上运行的私有 API 的调用,如here 所述。

它工作正常,但对于每次调用,我都使用 GoogleSignInAuthentication.idToken,其中包含用户的个人资料信息,并且通常有太多信息无法访问。

GoogleSignInAuthentication.authTokenGoogleSignInAccount.authHeaders 不是 JWT 格式并且被端点拒绝。

有没有办法在 google_sing_in获取 JWT 格式的访问令牌?或者每次调用都可以使用 id 令牌?

解决方法

Google 登录库提供的 idToken 已经是一个 Open Id Connect 令牌,正如您在此 documentation 中看到的那样,这意味着它已经采用安全的 JWT 格式,所以是的,它绝对可以使用它。

Google 登录库还提供了一个 OAuth2 访问令牌,可以使用 GoogleSignInAuthentication.accessToken 调用它,通过使用它,您可能能够生成 JWT 格式的令牌。

所以这完全取决于您,我个人会使用提供的 idToken,因为它已经准备好供您使用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。