当前位置: 首页 > 知识库问答 >
问题:

将App Engine与云存储集成在各种客户机库和API中的混乱

郦翰学
2023-03-14

我对Google云平台有点陌生,我正在尝试使用客户端库/API来理解app engine与Google云存储的集成选项。

你能在下面帮我澄清一下我的疑惑吗?

提前道歉,因为它们可能是非常基本的问题,因为我对此很陌生。

谷歌云存储客户端库和谷歌云存储JSON客户端库一样吗?如果是,云存储客户端库和JSON客户端库是否仅限于云存储的JSON API?还是云存储客户端库也支持XML API?

在本例中,他们使用了boto库和google-cloud-oauth2-boto-plug。

但我也在appengine文档中读到,Python和Java都直接支持oauth。那么为什么我们需要boto库和cloud-oauth2-boto-plugin呢?是因为他们使用xml API直接集成了python和使用云存储客户机库的out吗?如果他们使用云存储客户端库,那么python就不需要安装boto库和cloud-oauth2-boto-plugin,因为它默认支持oauth?

谢了。

共有1个答案

商开宇
2023-03-14

Google云存储有两个公共API,XML API和JSON API。XML API与Amazon的S3 API相似,使用curl和wget这样的命令行实用程序下载和上传数据很容易。JSON API看起来像其他Google云API,因此如果您熟悉这些API,JSON API将与您所期望的一样。

有多种客户机库:

Google API客户机库是一组库,用于访问各种编程语言中的各种Google API。这些都使用了GCS的JSON API。

除了所有这些之外,还有其他的Java和Python GCS客户机库,仅适用于app engine。这些库使用XML API。与gcloud-java和gcloud-python相比,它们的主要优势在于,在使用app Engine的本地html" target="_blank">开发服务器进行开发时,它们提供了一个基本的本地GCS假版本,并且可以很容易地保存它们的上传/下载状态,以便以后恢复。如果这对您不重要,我建议您使用gcloud-python。

在Google cloud中运行代码时,比如在GCE或App Engine上,Google很容易使用OAuth自动作为服务帐户进行身份验证。gcloud-*库利用了这一点。如果您在App Engine中使用它们,auth就会发生。您可以在gcloud-python auth Guide中了解更多关于这一点的信息。

 类似资料:
  • 问题内容: 我正在尝试决定是否应针对App引擎关联的Android项目使用App引擎搜索API或数据存储区。Google文档的唯一区别是 …索引搜索最多只能找到10,000个匹配的文档。App Engine数据存储区可能更适合需要检索非常大的结果集的应用程序。 鉴于我已经非常熟悉数据存储区:假设我不需要10,000个结果,有人可以帮我吗? 是否有任何优势,利用与使用数据存储为我的查询(根据上面的报

  • 我已经阅读了Axon文档,并查看了所有提供的示例项目,尤其是我在这里引用的AxonBank,但有一件事仍然困扰着我,就我所见,没有得到解释: 根据我的理解,在Axon中,您可以对表示物化视图的已读数据库执行查询,例如包含最新JPA实体的H2。但是,如果您有一个Spring存储库,例如(此处),那么您还可以使用-method,该方法只能用于命令。您不应该将存储库拆分为只读和只写存储库吗? 有人能给我

  • 波姆。xml 这是一个java配置文件。 这是redis服务器的配置文件 存储库 > Rest 创建: 阅读: 数据保存和读取相当好。我假设它们被保存到一个具有内存实现的redis数据库中,尽管我没有专门对此进行配置。我推断是因为当我通过redis cli发送命令时,我不会通过查询的键获得答案。 但是,当应用程序运行时,数据会被保存并读取。 停止应用程序然后启动应用程序后,数据丢失。 此外,我使用

  • 主要内容:一、存储引擎介绍,,二、查看存储引擎,三、常见存储引擎,1.InnoDB,2.MyISAM,3.Archive,4.Blackhole,5.CSV,6.Memory,7.Federated,8.Merge,9.NDB,四、设置系统默认的存储引擎一、存储引擎介绍 为了管理方便,人们把连接管理、查询缓存、语法解析、查询优化这些并不涉及真实数据存储的功能划分为MySQL server的功能,把真实存取数据的功能划分为存储引擎的功能。所以在MySQL server完成了查询优化后,只需按照生成

  • 我使用。NET Core2.0和ASP.NET Core2.0进行应用程序开发。“测试”应用程序是一个。NET核心控制台应用程序。我正在编写的核心代码是一个类库。一旦适当的测试。我选择这样做是因为我暂时不会使用它(它正在替换旧的ASPNET代码)。 无论如何,由于我必须处理各种服务的大量API密钥,所以我决定使用Microsoft Azure Key Vault来存储密钥。我有这一切设置,并理解这

  • 我试图建立一个连接器从谷歌云下载文件。为此,我使用云存储API客户端库Java(v1beta2-rev23-1.17.0-rc) 我正在使用oAuth2.0,并遵循云控制台帮助中提到的步骤。 验证我可以通过gsutil和api浏览器访问我的桶。 从示例下载了代码,添加了我的client_secrets.json并添加了一行来列出我的桶内容。 我犯了一个错误 400错误请求:“错误”:“未经授权的\