API карты Google Geocode, когда данный ключ API возвращает REQUEST_DENIED

Когда я удаляю часть ключа API, он работает нормально

$details_url = "http://maps.googleapis.com/maps/api/geocode/json?address=" . $string."&sensor=false";

Когда добавляете ключ API, он говорит, что REQUEST_DENIED.

$apiKey = 'AIzaSyCy2C82dDZlHkwGZ_fCfgh5gBdo50Q8cE0';
$string = str_replace(" ", "+", urlencode($string));
$details_url = "http://maps.googleapis.com/maps/api/geocode/json?address=" . $string."&sensor=false&key=".$apiKey;
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $details_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = json_decode(curl_exec($ch), true);

Это первый раз, когда я использую API геокодирования, и мне нужно работать на основе ключа API, потому что, как только мы не найдем достаточного количества из 2500 запросов в день, мы купим оплату в соответствии с вашим планом. (карта Google для бизнеса)

Ключ API, который я создал, был новым ключом сервера на панели консоли.

что я делаю, чтобы не принять мой ключ API? однако, когда я добавляю ключ API и пытаюсь через браузер, он работает нормально, как показано ниже, и я мог видеть отчеты об использовании и использованную квоту на консоли Google.

https://maps.googleapis.com/maps/api/geocode/json?address=2140+Amphitheatre+Parkway,+Mountain+View,+IN&key=AIzaSyCUDSJ2GBE1DHupbAZT4u8gZqclkIhmb0M

0

Решение

Запрос API должен быть отправлен через https для начала, а затем вы обнаружите, что срок действия ключа истек.

$string = 'Dundee, Scotland';
$apiKey = 'AIzaSyCy2C82dDZlHkwGZ_fCfgh5gBdo50Q8cE0';
$string = str_replace( " ", "+", urlencode( $string ) );
$url = "https://maps.googleapis.com/maps/api/geocode/json?address=" . $string."&sensor=false&key=".$apiKey;

$cacert='c:/wwwroot/cacert.pem';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_CAINFO, realpath( $cacert ) );
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,true );
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,2 );

$response = json_decode( curl_exec( $ch ), true );
$info = curl_getinfo( $ch );
curl_close( $ch );


echo '<pre>', print_r($info,1), PHP_EOL, print_r( $response, 1 ), '</pre>';
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]