java - 从 java spring boot 应用程序调用谷歌云函数
问题描述
我在使用适用于 iOS 和 swift 的特定 sdk 的移动应用程序中使用谷歌云功能没有问题。出于集成原因,我现在需要从 java springboot 服务器调用我的一个函数。
我找不到任何示例,是否存在特定的客户和示例?
我可以找到其他平台的示例,但不能找到 java 的示例。我错过了什么吗?有人可以让我朝着正确的方向前进吗?
谢谢
解决方案
GCP 有关于 Cloud Functions 身份验证的文档。由于您需要在 GCP 项目中的虚拟机上对云函数进行身份验证,因此我建议您阅读本节。
如前所述,您应该获得一个可以在 Cloud Functions 上进行身份验证的身份令牌。您可以从元数据服务器gcloud
或元数据服务器获取令牌。在您以任何格式访问它之后,您可以在不损害您的凭据(例如环境变量、存储库外的文件)的情况下访问它,只需执行对函数触发器的 HTTP 请求。
最后你应该有这样的东西:
cf_trigger = "https://<region>-<project_id>.cloudfunctions.net/<function_name>"
identity_token = "foo"
HttpRequest.newBuilder()
.uri(URI.create(cf_trigger))
.header("Authorization", "bearer " + identity_token)
.build();
推荐阅读
- soot - soot 可以将 jimple 文件转换为 java 文件吗?
- javascript - 检查 Transpiled 代码到 JS Angular 中的未定义条件
- docker - 如何使用不同的配置文件测试 docker-compose?
- css - 在 LESS (CSS) 中为 Angular 应用程序导入组件
- java - 构造不可变对象的抽象构建器
- node.js - 无法使用 mongoose、node.js、express 和 async 函数更新文档数据
- html - 在 CSS 关键帧中一一滚动消息
- azure - 如何在 Azure SDK for dot net 中检查提供的网站名称是否可用且免费
- r - 按值过滤数据集并用R中其他数据集中的值替换
- python - 如何使用范围列表自动创建嵌套 for 循环?