Method: hashLists.batchGet

一次获取多个哈希列表。

客户端需要获取多个哈希列表是很常见的情况。此方法优于多次使用常规 Get 方法。

这是由 https://google.aip.dev/231 定义的标准批量 Get 方法,HTTP 方法也是 GET。

HTTP 请求

GET https://safebrowsing.googleapis.com/v5alpha1/hashLists:batchGet

网址采用 gRPC 转码语法。

查询参数

参数
names[]

string

必需。特定哈希列表的名称。该列表可以是威胁列表,也可以是全局缓存。名称不得包含重复项;如果重复,客户端会收到错误。

version[]

string (bytes format)

客户端已有的哈希列表版本。如果这是客户端首次提取哈希列表,则应将此字段留空。否则,客户端应提供之前从服务器接收的版本。客户端不得操纵这些字节。

客户端无需按照与相应列表名称相同的顺序发送版本。客户端在请求中发送的版本数量可能少于名称。但是,客户端不得发送与同一名称对应的多个版本;否则,客户端会收到错误。

历史说明:在 API 的 V4 版中,它称为 states;为清楚起见,现在已重命名为 version

使用 base64 编码的字符串。

desiredHashLength

enum (HashLength)

所返回哈希的所需哈希前缀长度(以字节为单位)。然后,服务器会返回此指定长度的所有哈希前缀。

不同的哈希列表对 desiredHashLength 字段的可接受值有不同的要求。您可以在 HashListMetadatasupportedHashLengths 字段中找到此信息。如果 desiredHashLength 未在 supportedHashLengths 内指定值,则系统会向客户端返回错误。

特别是对于 BatchGetHashListsRequest,客户端无法为不同的列表指定不同的 desiredHashLength。如果需要这样做,客户端应拆分为多个 BatchGetHashListsRequest

sizeConstraints

object (SizeConstraints)

每个列表的大小限制。如果省略,则不存在任何限制条件。请注意,此处的尺寸是按列表列出的,并未汇总到所有列表中。

请求正文

请求正文必须为空。

响应正文

包含多个哈希列表的响应。

如果成功,响应正文将包含结构如下的数据:

JSON 表示法
{
  "hashLists": [
    {
      object (HashList)
    }
  ]
}
字段
hashLists[]

object (HashList)

哈希列表(采用请求中指定的相同顺序)。