【发布时间】:2020-09-20 04:49:07
【问题描述】:
我想使用服务帐户密钥对 Google Cloud Platform 进行 REST API 调用,但我不知道如何对调用进行身份验证。通常,我会使用提供的客户端库并将密钥传递给它,但在这种情况下,客户端库不支持此特定端点。
这是我试图调用的其余端点: https://cloud.google.com/datastore/docs/reference/admin/rest/v1/projects/export
我需要从 nodejs 应用程序进行调用,所以这是相应的客户端库: https://github.com/googleapis/nodejs-datastore
The documentation 非常注重一般概念,但我找不到任何关于如何使用正确凭据实际进行 REST 调用的具体内容。
【问题讨论】:
-
我写了一篇文章,展示了Python中的步骤:jhanley.com/…
-
另一个想法可能是使用适用于 JavaScript 的通用 Google API 客户端库。据我了解...在松散的级别...对于此处列出的所有 API ...developers.google.com/apis-explorer/#p 包括 cloud.google.com/datastore/docs/reference/admin/rest 有一个 JavaScript 高级 API 提供身份验证和调用功能。
-
@JohnHanley 太棒了!我将把它移植到 nodejs 并现在试一试。如果我可以问,你是怎么知道怎么做的?是否有我不知道的文档,或者是从对 OAuth 和反复试验的一般理解得出的?
-
@Kolban 我不知道 JS 客户端。感谢您指出。不过,它似乎是为客户端设计的,以及相应的身份验证流程,所以我认为我不能在服务器端使用它。
-
@bluethings - 我通过研究 Google Cloud 客户端库源代码创建了我的文章。我看到您使用其中一个客户端库发布了答案。如果你搜索我的答案,你会看到我用 node.js 和其他语言编写的其他客户端示例。
标签: google-cloud-platform google-cloud-datastore