【问题标题】:google calendar discontinuing support for json rpc and api-java-client谷歌日历停止支持 json rpc 和 api-java-client
【发布时间】:2018-09-04 14:55:19
【问题描述】:

我们使用 Google APIs Calendar v3,Google 表示他们将停止支持 json rpc Discontinuing support for JSON-RPC and Global HTTP Batch Endpoints

我找不到他们计划的 v4 版本是否兼容,或者当前版本是否兼容。文档不参考它。 Java Quickstart

有任何相关信息吗?

【问题讨论】:

  • 您当前是否真的在使用批处理端点?
  • 是的,我们正在使用 BatchRequest

标签: google-api google-api-java-client google-calendar-api


【解决方案1】:

不只是日历受到影响,它的所有 Google API 发现 API 都会受到影响。批处理端点

POST /batch HTTP/1.1
Authorization: Bearer your_auth_token
Host: www.googleapis.com
Content-Type: multipart/mixed; boundary=batch_foobarbaz
Content-Length: total_content_length

将于 2019 年 3 月 25 日左右停产。话虽如此,我怀疑客户端库是否已全部更新以将其删除。我是其中两个的贡献者,还没有听到任何关于从库中删除批处理功能的消息。

Google API 客户端库已重新生成,不再使 对全局 HTTP 批处理端点的请求。使用这些的客户 库必须升级到最新版本。不使用的客户 Google API 客户端库和/或对 JSON-RPC 进行自定义调用 端点或 HTTP 批处理端点将需要进行概述的更改 下面。

全局批处理端点是

www.googleapis.com/batch

新的是

www.googleapis.com/batch//

我认为这里的单词选择不正确,如果需要,它们会重新生成。除了一个例外,该更改不应影响用户。由于端点是特定于 API 的,因此异构批处理请求在调用中包含多个 API 的单个批处理请求将不起作用。

现在,据我所知,坏消息是没有什么可以取代它的。您将无法发出异构批处理请求。 Google apis java 客户端库似乎使用旧端点 BatchRequest.java,因此如果您使用异构批处理,则必须在他们更新库以支持新的 API 特定端点时更改您的代码。

更新

在过去 24 小时内与 Google 反复多次交流后,我对那篇帖子得到了一些澄清。

  1. 批处理仍可与客户端库一起使用
  2. 大多数客户端库似乎已经在使用此端点,因此应该没有变化。
  3. 您将只能在批处理请求中调用一个 API。示例您不能在同一个批处理请求中调用驱动器和日历 API。您必须提出两个批量请求,一个用于驱动器,一个用于日历。

可能会对该帖子进行一些修改,以使语言更加清晰。

我已更新我的答案以反映 Google 的澄清

【讨论】:

  • 所以要替换批处理,我们需要重新编写代码以使用标准 java api 执行多个请求?
  • 客户端库还没有全部重新生成(至少不是 PHP 的,我刚刚检查过,Batch 类的最后一次更新是 2017 年 11 月)!无论如何,在关闭之前有 1 年的延迟,我猜客户端库很快就会更新。
  • .net 尚未更新,但我们正计划更新。我试图推迟它,以便给开发人员时间。
  • @Mr_Thorynque 如果您在不同的调用中混合不同的 api 检查文档中的 heterogeneous batch request example,您将只需要发出多个请求。
  • 我已根据过去 12 小时内从 Google 获得的一些信息更新了我的答案。
【解决方案2】:

它并没有完全删除批处理。

根据blog,他们正在删除异构批处理 - 使用导致其他 API 的请求访问相同的 API。他们还将同质批处理(批处理到同一个 API 并导致单一 API)整合到“API 特定批处理端点”。

根据我对博客的理解,如果您要批处理几个不同的请求,即。 Foo 请求和 Bar 请求进入 Foo API 调用,您必须调整代码以使用一批用于另一批,另一批使用一批。如果您已经这样做了,那么您是否必须更改代码尚不清楚,也许新发布的库将有一种新的方式来处理这些请求。

【讨论】:

  • 这是一个有趣的答案,我会检查我的代码。如果我做同质批处理请求,也许我会拭目以待。
猜你喜欢
  • 2015-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-13
  • 1970-01-01
  • 1970-01-01
  • 2016-04-15
相关资源
最近更新 更多