java - 如何使用 java 而不是 gcloud 命令获取 gcloud 的 id_token
问题描述
有人可以给我一段 java 代码来使用谷歌帐户在 GCP 上获取 id_token 吗?
我在 GCP 上部署了一个 restful api 端点服务来测试。我可以使用我的 google 帐户使用命令“gcloud config config-helper”(例如 id_token:eyJadhI6....)来获取 id_token。然后将此 id_token 作为授权值放置在标头中。REST 请求按预期触发。但是我需要使用 Java 而不是从控制台命令行执行相同的操作来获取有效的 id_token。
解决方案
我鼓励您使用 Google 提供的客户端库 (SDK) 之一。
这些都是开源的,并由谷歌测试,为您的开发提供了一个更好的平台。
请参阅: https ://cloud.google.com/apis/docs/cloud-client-libraries https://github.com/googleapis/google-cloud-java
和: https ://github.com/googleapis/google-cloud-java#authentication
使用这些 SDK,您将避免直接通过底层 REST API 导航的复杂性。
几个有用的技巧|指针:
- Google APIs Explorer使您能够从浏览器使用 REST API
- 如果您附加
--log-http
到任何gcloud
命令,则会记录 REST 调用。
注意有 2 种 API(API 客户端库和云客户端库)请参阅说明。Cloud Client Libraries 更现代、更惯用,如果您主要使用 GCP,则首选这些库。
!
推荐阅读
- python - 如何在python中特定超时后终止进程?
- javascript - onClick={tmp} 和 onClick={()=>tmp} 有什么区别
- sql - 需要帮助通过sql查询建立销售漏斗报告
- c# - Blazor 服务器项目
- javascript - 开玩笑的单元测试 - SyntaxError:不能在模块外使用 import 语句
- react-native - 在 Expo React Native 中使用 Jest 进行单元测试 Expo-Google-Sign-In
- php - (API) Laravel 7 上不允许使用 tymon/jwt-auth 的 405 方法
- javascript - ReactJS - 如何在子组件内部获取由父组件传递的道具的详细信息?
- python-3.x - 通过 Python3.7 连接到 SQL Server 的操作错误
- python - 在一个数字序列中找到最大的 n 位乘积