Google URL Shortener - 未指定HTTP Referer

时间:2016-10-27 03:08:01

标签: php google-api url-shortener

我有URL缩短脚本运行良好,直到我在API控制台中添加了网站引用到KEY限制(我必须这样做)。现在我选择不回复短网址。我收到以下错误:

  

数组([error] =>数组([errors] =>数组([0] =>数组([domain]   => usageLimits [reason] => ipRefererBlocked [message] =>该请求未指定任何引用者。请确保客户端正在发送   引用或使用API​​控制台删除引用限制。   [extendedHelp] =>   https://console.developers.google.com/apis/credentials?project=XXXXXXXXX   ))[code] => 403 [message] =>请求没有指定任何请求   引荐。请确保客户端正在发送引用或使用   用于删除引用限制的API控制台。 ))

我的PHP:

<?php

$longurl = "http://example.com";

$api_key_google = "XXXX_API_KEY_XXXXX";
$curl = curl_init('https://www.googleapis.com/urlshortener/v1/url?key='.$api_key_google);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode(array('longUrl' => $longurl)));
$return = json_decode(curl_exec($curl), true);
curl_close($curl);

print_r($return);       
echo $shortDWName = $return['id'];

?>

我在这里错过了什么?感谢您的帮助。

1 个答案:

答案 0 :(得分:5)

尝试添加此行

curl_setopt($curl, CURLOPT_HEADER, 0);
// should add this line
curl_setopt($ch, CURLOPT_REFERER, '[your restriction domain]');