我正在尝试使用 Google API Python 客户端发出对 Safe Browsing API v5 的请求。默认情况下,客户端似乎正在尝试获取 JSON 响应,因为
alt=json
会自动添加到 API 请求 URL(客户端生成的示例:https://safebrowsing.googleapis.com/v5/hashes:search ?hashPrefixes=WwuJdQ&key=[]&alt=json)
但是,添加此内容后,我只是收到一个错误,表示不支持该格式:
{
"error": {
"code": 400,
"message": "Unsupported Output Format",
"status": "INVALID_ARGUMENT"
}
}
Q1) 这是否意味着该 API 尚不支持 JSON 输出?尽管
json
是 API 客户端包的发现缓存中列出的默认输出格式 (discovery_cache/documents/safebrowsing.v5.json
)?
我也一直在尝试使用具有 Protobuf 输出的 API,因为这似乎确实受到支持。我将服务
model
方法中的 build
参数设置为 ProtocolBufferModel
,但随后我得到 TypeError: request() missing 1 required positional argument: 'body_value'
作为错误。
Q2) 由于 API 似乎还不支持 JSON,我怎样才能让 Google API Python 客户端与 Protobuf 一起工作?
(*) 我知道 API 的 v5alpha1 变体,它有更多端点,但 JSON 输出在那里也不起作用。
你找到解决办法了吗?抱歉,我无法在评论中提问,因为我需要 50 声望。