本文由 @张驰 翻译,更新时间:2020-02-16
developers.google.com/docs/api/co…
您可以使用 HTTP 请求或特定于语言的客户端库中的方法调用来调用 Google Docs API。 这些大致相同,但是使用客户端库通常要简单得多。
API 返回 HTTP 响应,该响应通常包括请求调用的结果。 使用客户端库发出请求时,将以特定于语言的方式返回响应。
请求方式 Request methods
Docs API 支持以下请求方法:
- create - 创建一个新的空白Google文档文档。
- get - 返回指定文档的完整实例。 您可以解析返回的JSON,以提取文档内容,格式和其他功能。
- batchUpdate - 提交要应用于文档的编辑请求列表,并返回结果列表。
您可以使用客户端库方法调用这些方法,或者直接作为HTTP请求调用,并根据调用风格返回相应的响应。有关这些请求和响应的详细信息,请参阅API参考。
批量更新 Batch update
batchUpdate 方法的工作原理是获取一个或多个请求对象,每个对象指定要执行的单个请求类型。有许多不同类型的请求。下面是请求类型的细分,分为不同的类别。
操作文本
操作样式
操作范围
操作图片
一种流行的批量请求模式如下:
requests = []
requests.append(some request)
requests.append(another one)
requests.append(and another one)
.
.
.
body = ... & requests & ...
...batchUpdate(body)
API 会在应用它们之前验证 batchUpdate 调用中的每个请求:如果任何请求无效,则整个批处理都会失败,并且文档将保持不变。
一些请求返回的响应包含有关如何应用该请求的详细信息。 其他请求只是返回一个空的答复。 答复的顺序与请求的顺序相匹配。
例如,假设您用四个更新调用 batchUpdate,而只有第三个更新返回信息。 该响应将有两个空答复,即对第三个请求的答复和另一个空答复(按此顺序)。
由于其他用户可能正在编辑文档,因此您的更改可能会随着协作者更改而更改。 如果没有合作者,更新后的文档应准确反映您的更改。 无论如何,保证您请求中的更新可以原子地一起应用。