2017-02-20 39 views
0

我正在尝试将Google安全浏览API集成到我的网站。该documentationGoogle安全浏览API未响应 - 发送回应状态

我曾尝试:

$apiKey = 'MyFakeAPiKey-pozpkefpoqskpfazejsqpi'; 
$url = 'http://www.bbc.com/'; 
$url = urlencode($url); 
$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "https://sb-ssl.google.com/safebrowsing/api/lookup?client=firefox&key='. $apiKey.'&appver=1.5.2&pver=4.0&url='.$url"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_POST, 1); 

$headers = array(); 
$headers[] = "Content-Type: application/json"; 
$headers[] = "Content-length: auto"; 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 

$result = curl_exec($ch); 
if (curl_errno($ch)) { 
    echo 'Error:' . curl_error($ch); 
} 
curl_close($ch); 

echo print_r($result, true); 

我没有得到任何response.What我做错了吗?

+0

如果这是您真正的API密钥,您应该立即使其无效** _ **。它永远是妥协的,你需要生成一个新的。 – Chris

+0

谢谢克里斯,但我在问题的底部指出,这个关键不是真实的。 – Mkey

回答

0

我找到了解决方案。一切都按预期工作。

$url = 'http://911.sos-empleados.net'; 


        $apiKey = 'Your API'; 
        $apiUrl = 'https://safebrowsing.googleapis.com/v4/threatMatches:find?key='.$apiKey; 

        $params = [ 
         'client' => [ 
          'clientId' => 'foobar', 
          'clientVersion' => '1.2.3' 
         ], 
         'threatInfo' => [ 
          "threatTypes" =>["MALWARE", "SOCIAL_ENGINEERING"], 
          "platformTypes" => ["WINDOWS"], 
          'threatEntryTypes' => ['URL'], 
          'threatEntries' => [ 
           [ 'url' => $url ] 
          ] 
         ] 
        ]; 


        $ch = curl_init($apiUrl); 
        curl_setopt_array($ch, [ 
         CURLOPT_POST => 1, 
         CURLOPT_RETURNTRANSFER => 1, 
         CURLOPT_HEADER => 1, 
         CURLOPT_POSTFIELDS => json_encode($params), 
         CURLOPT_HTTPHEADER => [ 
          'Content-Type: text/json' 
         ] 
        ]); 

        $res = curl_exec($ch); 
        ?> <pre><?php echo print_r($res, true); ?></pre> <?php 
        ?> 
0

您使用的是旧版本的API。代码中的端点与安全浏览API的版本1相对应,安全浏览API在2011年12月已弃用,并且此后已关闭。

您需要更新到受支持的API版本 - 最好是v4,因为这是当前版本。

+0

不赞成不等于不工作。我设法让v3和v4都能够正常工作,但当然还是继续使用v4。我提供的答案是v4。 – Mkey

+0

什么已被弃用 - 随后关闭,但我无法找到确切的日期 - 是安全浏览API的**版本1 **。 (和版本2一样)。后来的版本都很好,但是你最初发布的代码是特定于API的旧版非功能版本的。 – duskwuff