Google 安全浏览 API 使用 C# 的 v4 实现 returns 空响应
Google Safe Browsing API v4 implementation with C# returns null response
我正在尝试 lookup/scan 使用 Google 安全浏览 API v4 的 URL 状态,我尝试了我在此 link [=15] 中找到的方法=],但我收到一个空响应。
代码如下:
private async void checkUrlBtn_Click(object sender, EventArgs e)
{
var service = new SafebrowsingService(new BaseClientService.Initializer
{
ApplicationName = "dotnet-client",
ApiKey = "MY_API"
});
var request = service.ThreatMatches.Find(new FindThreatMatchesRequest()
{
Client = new ClientInfo
{
ClientId = "Dotnet-client",
ClientVersion = "1.5.2"
},
ThreatInfo = new ThreatInfo()
{
ThreatTypes = new List<string> { "SOCIAL_ENGINEERING" },
PlatformTypes = new List<string> { "PLATFORM_TYPE_UNSPECIFIED" },
ThreatEntryTypes = new List<string> { "URL" },
ThreatEntries = new List<ThreatEntry>
{
new ThreatEntry
{
Url = "https://someurlIGotFromPhishtank.com"
}
}
}
});
var response = await request.ExecuteAsync();
string json = JsonConvert.SerializeObject(response);
string jsonFormatted = JToken.Parse(json).ToString(Formatting.Indented);
Console.WriteLine(jsonFormatted);
}
我的回复:
{
"matches": null,
"ETag": null
}
在这一点上,我觉得我做错了什么,我需要帮助!!!
首先,我觉得有必要指出您刚刚在 public 论坛上发布了您的 private Google API 密钥。您需要在阅读此回复后立即去撤销此 API 密钥。
其次,您应该知道,仅仅因为您从表明它是恶意 URL 的来源获得 URL,并不意味着 Google 安全浏览将在fact return 是恶意的响应。因此,您那里的空响应可能只是表明 Google 安全浏览确实没有匹配 URL。
最后,如果我没记错的话(但我需要仔细检查才能确定),您在发出请求时不能为平台类型指定 PLATFORM_TYPE_UNSPECIFIED
。您需要在请求中指定一种或多种特定平台类型。也许试试看?
我正在尝试 lookup/scan 使用 Google 安全浏览 API v4 的 URL 状态,我尝试了我在此 link [=15] 中找到的方法=],但我收到一个空响应。
代码如下:
private async void checkUrlBtn_Click(object sender, EventArgs e)
{
var service = new SafebrowsingService(new BaseClientService.Initializer
{
ApplicationName = "dotnet-client",
ApiKey = "MY_API"
});
var request = service.ThreatMatches.Find(new FindThreatMatchesRequest()
{
Client = new ClientInfo
{
ClientId = "Dotnet-client",
ClientVersion = "1.5.2"
},
ThreatInfo = new ThreatInfo()
{
ThreatTypes = new List<string> { "SOCIAL_ENGINEERING" },
PlatformTypes = new List<string> { "PLATFORM_TYPE_UNSPECIFIED" },
ThreatEntryTypes = new List<string> { "URL" },
ThreatEntries = new List<ThreatEntry>
{
new ThreatEntry
{
Url = "https://someurlIGotFromPhishtank.com"
}
}
}
});
var response = await request.ExecuteAsync();
string json = JsonConvert.SerializeObject(response);
string jsonFormatted = JToken.Parse(json).ToString(Formatting.Indented);
Console.WriteLine(jsonFormatted);
}
我的回复:
{
"matches": null,
"ETag": null
}
在这一点上,我觉得我做错了什么,我需要帮助!!!
首先,我觉得有必要指出您刚刚在 public 论坛上发布了您的 private Google API 密钥。您需要在阅读此回复后立即去撤销此 API 密钥。
其次,您应该知道,仅仅因为您从表明它是恶意 URL 的来源获得 URL,并不意味着 Google 安全浏览将在fact return 是恶意的响应。因此,您那里的空响应可能只是表明 Google 安全浏览确实没有匹配 URL。
最后,如果我没记错的话(但我需要仔细检查才能确定),您在发出请求时不能为平台类型指定 PLATFORM_TYPE_UNSPECIFIED
。您需要在请求中指定一种或多种特定平台类型。也许试试看?