Статический API Карт Google возвращает странное изображение - PullRequest
4 голосов
/ 07 апреля 2011

У меня есть страница со статическим URI карт в виде http://maps.google.com/maps/api/staticmap?size=600x240&markers=icon:http://100procentjan.nl/tweakers/punaise.png|shadow:false|52.369010925293,4.8560848236084&sensor=false&zoom=15&center=52.369010925293,4.8560848236084.

Когда я захожу на эту страницу из любого браузера, она отображается нормально, но не тогда, когда я использую ее через Blackberry, которая подключена через нашу BES (но с той же беспроводной сетью!). Тогда это изображение появляется:

Argh

Кто-нибудь знает, что означает это изображение?

Ответы [ 4 ]

5 голосов
/ 07 апреля 2011

У вас превышен лимит использования для определенного ip-адреса

"Использование API статических карт Google может быть ограничено 1000 уникальных (разных) запросов изображений на зрителяза день "

3 голосов
/ 09 декабря 2012

У меня была такая же проблема на разных беспроводных носителях.Я полагаю, что это произошло из-за того, что трафик трафика многих пользователей проходил через один и тот же внешний IP-адрес, используемый оператором беспроводной связи.Google рассматривает все это как один источник запроса.

Чтобы исправить это, убедитесь, что вы добавляете свой ключ API Google в конец запроса на статическую карту.Пример:

http://maps.googleapis.com/maps/api/staticmap?center=<lat>,<lng>&zoom=17&markers=color:0059A9%7C<lat>,<lng>&size=576x174&sensor=false&key=YOUR_SUPER_LONG_GOOGLE_API_KEY_GOES_HERE

3 голосов
/ 15 декабря 2011

Это специфическая проблема BB с API статических карт Google. Ограничение скорости API является нормальным, но оно появляется чаще при использовании устройств BB.

Кажется, они используют пул IP-адресов и переносят их на устройства. Теоретически это должно быть очень непостоянным вопросом. Если вы подождете несколько дней, часы должны уйти.

Другими словами, в совокупности ваш IP обращался к API статических карт более 1000 раз за 24 часа. Это также происходит, когда вы слишком часто используете API в течение короткого промежутка времени.

Моим решением было написать простой PHP-скрипт, который один раз запрашивал изображение карты у Google, сохранял его в виде файла и просто обслуживал его, вместо того, чтобы каждый раз использовать API карт.

Вот код:

<?php

header('Content-Type: image/jpeg');

$latlng = (isset($_GET['c']))? $_GET['c'] : NULL ;
$zoom   = (isset($_GET['z']))? $_GET['z'] : 9 ;
$file   = "cache/p_$p-z_$zoom.jpg";

if(!file_exists($file))
{
    $parts = array(
        'center'  => $latlng,
        'zoom'    => $zoom,
        'size'    => '320x240',
        'maptype' => 'terrain',
        'sensor'  => 'false',
        'format'  => 'jpeg'
    );      

    file_put_contents(
        $file, file_get_contents("http://maps.googleapis.com/maps/api/staticmap?".implode('&', $parts))
    );
}

echo file_get_contents($file);
0 голосов
/ 18 ноября 2011

Я тоже получаю это всегда на Blackberry.Не думайте, что его использование ограничено, потому что я только что проснулся, и мой общий доступ = 1. Если только это не проблема общего IP, связанная с Blackberry.

...