Google Elevation API — ограничения

Я разрабатываю картографическое приложение, использующее Google Elevation API. Сегодня я заметил, что получил ответ OVER_QUERY_LIMIT. Ясно, что я исчерпал свою квоту. Конечно, я прочитал документацию: http://code.google.com/apis/maps/documentation/elevation/#Limits. Хотя есть одна вещь, которую я не могу понять. Таким образом, у меня есть к вам вопрос.

Я прохожу только две точки как путь, но я хочу, чтобы он был разделен на 250 шагов. Получает ли следующий запрос информацию о 250 местоположениях или только о двух?

http://maps.googleapis.com/maps/api/elevation/json?path=90.828934,-33.938923|92.983400,-2.552155&mapclient=flashapi&sensor=false&samples=250&key=KEY=xt&url=URL

Я думаю, что я не мог проверить 25 000 локаций за один день, но если вышеупомянутый запрос получает 250 локаций вместо двух, то у меня проблема :)

Спасибо


person Jacek Francuz    schedule 22.02.2011    source источник


Ответы (2)


По моему опыту и согласно документации, ваш запрос действительно считается 250 местоположениями. Возможно, вам следует использовать меньшее количество шагов и интерполировать.

Имейте в виду, что даже если это не так, вы также подвергаетесь ограничению в 2500 запросов в день.

person Tomas    schedule 22.02.2011

С опозданием, но может кому пригодится...

Из документации по API:

"Use of the Google Elevation API is subject to a limit of 2,500 requests per day... In each given request you may query the elevation of up to 512 locations"

Я читал, что пакетный запрос считается одним запросом, так что это не должно быть проблемой.

Однако Google Elevation API (и другие их API карт) также возвращают OVER_QUERY_LIMIT, если вы часто обращаетесь к ним в течение короткого периода времени.

"Additionally, we enforce a request rate limit to prevent abuse of the service."

Чтобы справиться с этим, я встраиваю в свои функции параметр ожидания. Это постепенно увеличивает продолжительность времени между вызовами до тех пор, пока не будет получен ответ, который не будет получен до тех пор, пока не будет получен OVER_QUERY_LIMIT, или пока ожидание не превысит 500 мс (или другая продолжительность, в зависимости от приложения). Если он все еще возвращает OVER_QUERY_LIMIT, я возвращаю OVER_HARD_QUERY_LIMIT, чтобы показать, что я достиг дневного лимита.

person Jamie Bull    schedule 21.11.2012