В этом документе описаны шаги, которые необходимо выполнить, чтобы начать использовать Geocoding API.
|
Убедитесь, что вы соответствуете требованиям. |
Включите API в проекте Google Cloud. |
Настройте ключ API или OAuth, чтобы выполнить аутентифицированный запрос к API. |
Чтобы предотвратить несанкционированное использование продуктов платформы Google Карт, вызовы API должны содержать ключ API или токен OAuth. Выберите процедуру настройки, которая соответствует вашей среде развертывания.
Как создать токен OAuth
Geocoding API поддерживает аутентификацию OAuth 2.0. Google поддерживает распространенные сценарии OAuth 2.0, например для веб-сервера.
В этом документе описывается, как передать токен OAuth в вызов Geocoding API в среде разработки. Дополнительную информацию об использовании OAuth в рабочей среде можно найти в статье Способы аутентификации в Google.
Вы можете вызывать Google Maps API напрямую, отправляя запросы к API на сервер, или использовать клиентские библиотеки, чтобы упростить код. Google Карты предоставляют клиентские библиотеки для Go, Java, Node.js и Python. Подробнее о клиентских библиотеках Geocoding API…
Общая информация о протоколе OAuth
Создавать токены доступа и управлять ими с помощью OAuth можно несколькими способами в зависимости от среды развертывания.
Вы можете использовать OAuth 2.0 для межсерверного взаимодействия между вашим приложением и сервисом Google. В этом случае вы используете сервисный аккаунт, связанный с вашим приложением, а не с отдельным пользователем. Вы можете отправлять запросы к API, используя сервисный аккаунт, без непосредственного участия пользователей. Подробнее о способах аутентификации в Google…
Вы также можете интегрировать Geocoding API в мобильное приложение для Android или iOS. Подробнее о том, как использовать OAuth и управлять токенами доступа в разных средах развертывания, читайте в статье Использование OAuth 2.0 для доступа к API Google.
Области действия OAuth
Чтобы использовать OAuth с Geocoding API, необходимо назначить токену OAuth правильную область действия. Geocoding API поддерживает следующие области действия:
https://www.googleapis.com/auth/maps-platform.geocode– используется со всеми методами Geocoding API.https://www.googleapis.com/auth/maps-platform.destinations– используйте только сSearchDestinationsдля запросов о пункте назначения и прибытии.https://www.googleapis.com/auth/maps-platform.geocode.address– используется только сGeocodeAddressдля прямого геокодирования.https://www.googleapis.com/auth/maps-platform.geocode.location– используйте только сGeocodeLocationдля обратного геокодирования.https://www.googleapis.com/auth/maps-platform.geocode.place– используйте только сGeocodePlaceдля геокодирования мест.
Вы также можете использовать общую область действия https://www.googleapis.com/auth/cloud-platform для всех методов Geocoding API. Эта область действия полезна при разработке, поскольку она используется по умолчанию при создании токенов с помощью CLI gcloud.
Пример. Попробуйте вызовы REST API в локальной среде разработки
Если у вас нет среды, которая генерирует токены, и вы хотите попробовать Geocoding API с токеном OAuth, выполните процедуру, описанную в этом разделе.
В этом примере показано, как использовать токен OAuth, предоставленный Application Default Credentials (ADC), для выполнения вызова. Подробнее о том, как выполнить аутентификацию с помощью клиентских библиотек с использованием ADC для вызова API Google…
Приведенную ниже процедуру REST следует использовать только для разработки или тестирования, но не для рабочей среды.
Требования
Прежде чем отправлять REST-запрос с помощью ADC, предоставьте ADC учетные данные, используя CLI gcloud:
Установите и инициализируйте интерфейс командной строки
gcloud. Подробнее о том, как установить gcloud CLI…Выполните аутентификацию с помощью интерфейса командной строки
gcloud:gcloud auth application-default login
Завершите процесс входа, чтобы сохранить учетные данные в локальном файле учетных данных, используемом ADC.
Подробнее о том, как настроить ADC для локальной среды разработки…
Как выполнить REST-запрос
В этом примере вы передаете два заголовка запроса:
Передайте токен OAuth в заголовке
Authorization, используя следующую команду для создания токена:gcloud auth application-default print-access-tokenВозвращенный токен имеет область действия
https://www.googleapis.com/auth/cloud-platform.Передайте идентификатор или название проекта Google Cloud, для которого включена оплата, в заголовке
X-Goog-User-Project.
Чтобы вызвать Geocoding API с помощью токена OAuth, выполните следующие действия:
В следующем примере кода замените PROJECT_ID на идентификатор проекта Google Cloud:
curl -X GET -H 'Content-Type: application/json' \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://geocode.googleapis.com/v4/geocode/address/1600+Amphitheatre+Parkway,+Mountain+View,+CA"
Чтобы скопировать команду
curl, нажмите Копировать в примере кода.Вставьте команду в окно терминала и запустите ее.
Устранение неполадок
Если в ответ на запрос вы получаете сообщение об ошибке о том, что API не поддерживает учетные данные конечных пользователей, ознакомьтесь с разделом Устранение неполадок с настройкой ADC.