2013-08-23 6 views
8

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

Вот пример URL для кодирования (который возвращает JSON) -

http://maps.googleapis.com/maps/api/geocode/json?address=Dallas&sensor=false

Сообщение: OVER_QUERY_LIMIT

Хорошо, это имеет смысл, потому что мы превышаем более 2500 ежедневный лимит, так мы размещаем API ключ, как это -

http://maps.googleapis.com/maps/api/geocode/json?key=xxxxx&address=Dallas&sensor=false

Сообщение: REQUEST_DENIED

Мне интересно, где и как поместить ключ API.

+0

Просто для подтверждения у вас есть ключ API для бизнес-аккаунта - не бесплатный ключ для использования Google Maps api вообще? – Matthew

+0

Добавлена ​​информация отсюда до моего ответа: https://developers.google.com/maps/documentation/business/clientside/ – Matthew

+0

Чтобы четко сформулировать это, ключ консоли разработчика (API) можно использовать только с клиентом Google Maps, сторонних API. Вызов, который вы делаете, - это API веб-сервиса геокодирования Google Maps, поэтому ответ 'REQUEST_DENIED'. –

ответ

11

Похоже, в 3-й версии вы должны передать ClientID в URL, а не key, как вы в бесплатной версии: https://developers.google.com/maps/articles/v2tov3#newkey

Таким образом, ваш URL должен выглядеть так: http://maps.googleapis.com/maps/api/geocode/json?client=xxxxx&address=Dallas&sensor=false

Не достаточно повезло, чтобы иметь платный аккаунт, поэтому я не могу тестировать - но я думаю, что это приведет вас к правильному пути.

Соответствующие по этой ссылке: https://developers.google.com/maps/documentation/business/webservices/

Client ID

You must include your client ID in all API requests. Your client ID identifies you as a Maps API for Business customer and enables support and purchased quota for your application. Requests made without a client ID are not eligible for Maps API for Business benefits.

If you're switching from the free API services to a Maps API for Business implementation, you must remove the key parameter from your requests. Google Maps API web services will deny requests made with both a client ID and a key.

More information is available in the Authentication and Authorization chapter of this guide.

If you have lost your client ID, you can recover it by logging in to the support portal and clicking Maps: Add URLs from the links on the left of the page.

EDIT

Для получения дополнительной информации, включая инструкции по прохождению идентификатора клиента к API Земли, v2 API, и API Карт для Flash, пожалуйста, прочитайте Loading Client-side APIs.

Если вы потеряли свой идентификатор клиента или криптографический ключ, вы можете восстановить их, войдя в систему support portal и нажав «Карты»: добавьте URL-адреса из ссылок в левой части страницы.

+2

Мы только что закончили общение с Google по телефону. К сожалению, у нас не было Business Account for Geocoding, стоимость которого составляет *** $ 17 000 *** в год. Теперь мы говорим с нашим клиентом. Большое вам спасибо за вашу помощь. – Win

+0

Чтобы избежать ограничений, которые вы получаете в кэш-памяти в базе данных вашего приложения, зависит от того, что вы используете для геокодирования (адреса, которые редко бывают одинаковыми), что в основном означает, что вам нужно выложить оболочку, или часто повторяющиеся места размещения, что означает, что вам нужно только вызывать API Google для новых). – Matthew

+0

Соответствует: http://gis.stackexchange.com/questions/15052/how-to-avoid-google-map-geocode-limit – Matthew

Смежные вопросы