Konfigurowanie interfejsu Geocoding API

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

W tym dokumencie opisano czynności, które musisz wykonać, aby zacząć korzystać z interfejsu Geocoding API.

Aby zapobiec nieautoryzowanemu użyciu, usługi Google Maps Platform wymagają, aby wywołania interfejsu API zawierały klucz interfejsu API lub token OAuth. Możesz wybrać procedurę konfiguracji, która odpowiada Twojemu środowisku wdrażania.

Tworzenie tokena OAuth

Geocoding API obsługuje uwierzytelnianie OAuth 2.0. Google obsługuje typowe scenariusze OAuth 2.0, takie jak scenariusze dotyczące serwera WWW.

W tym dokumencie opisano, jak przekazać token OAuth do wywołania interfejsu Geocoding API w środowisku programistycznym. Więcej informacji o używaniu protokołu OAuth w środowisku produkcyjnym znajdziesz w artykule o metodach uwierzytelniania w Google.

Interfejsy API Map Google możesz wywoływać bezpośrednio, wysyłając żądania do interfejsu API do serwera, lub możesz używać bibliotek klienta, aby uprościć kod. Mapy Google udostępniają biblioteki klienta dla języków Go, Java, Node.js i Python. Więcej informacji znajdziesz w artykule o bibliotekach klienta interfejsu Geocoding API.

Omówienie protokołu OAuth

Tokeny dostępu możesz tworzyć i zarządzać nimi za pomocą protokołu OAuth na kilka sposobów, w zależności od środowiska wdrażania.

Możesz używać protokołu OAuth 2.0 do interakcji między serwerami aplikacji i usługi Google. W tym scenariuszu używasz konta usługi powiązanego z aplikacją, a nie z konkretnym użytkownikiem. Możesz wysyłać żądania do interfejsu API za pomocą konta usługi bez bezpośredniego angażowania użytkowników. Więcej informacji o metodach uwierzytelniania znajdziesz w artykule o metodach uwierzytelniania w Google.

Możesz też zintegrować Geocoding API z aplikacją mobilną na Androida lub iOS. Więcej informacji o używaniu protokołu OAuth i zarządzaniu tokenami dostępu w różnych środowiskach wdrażania znajdziesz w artykule Używanie OAuth 2.0 do korzystania z interfejsów API Google.

zakresów protokołu OAuth

Aby używać protokołu OAuth z Geocoding API, musisz przypisać tokenowi OAuth prawidłowy zakres. Geocoding API obsługuje te zakresy:

  • https://www.googleapis.com/auth/maps-platform.geocode – używaj ze wszystkimi metodami Geocoding API.
  • https://www.googleapis.com/auth/maps-platform.destinations – używaj tylko z SearchDestinations w przypadku zapytań o miejsce docelowe i przylot.
  • https://www.googleapis.com/auth/maps-platform.geocode.address – używaj tylko z GeocodeAddress do geokodowania do przodu.
  • https://www.googleapis.com/auth/maps-platform.geocode.location – używaj tylko z GeocodeLocation do odwrotnego geokodowania.
  • https://www.googleapis.com/auth/maps-platform.geocode.place – używaj tylko z GeocodePlace do geokodowania miejsc.

Możesz też używać ogólnego zakresu https://www.googleapis.com/auth/cloud-platform we wszystkich metodach Geocoding API. Ten zakres jest przydatny podczas programowania, ponieważ jest domyślnym zakresem podczas tworzenia tokenów za pomocą interfejsu wiersza poleceń gcloud.

Przykład: wypróbuj wywołania interfejsu API REST w lokalnym środowisku programistycznym

Jeśli nie masz środowiska, które generuje tokeny, i chcesz wypróbować Geocoding API z tokenem OAuth, wykonaj czynności opisane w tej sekcji.

Ten przykład pokazuje, jak użyć tokena OAuth dostarczonego przez domyślne uwierzytelnianie aplikacji (ADC) do wykonania wywołania. Więcej informacji o używaniu ADC do wywoływania interfejsów API Google za pomocą bibliotek klienta znajdziesz w artykule na temat uwierzytelniania za pomocą bibliotek klienta.

Poniższej procedury REST używaj tylko do celów programistycznych lub testowych, a nie produkcyjnych.

Wymagania wstępne

Zanim wyślesz żądanie REST za pomocą domyślnych danych uwierzytelniających aplikacji, użyj interfejsu wiersza poleceń gcloud, aby przekazać dane uwierzytelniające do domyślnych danych uwierzytelniających aplikacji:

  1. Zainstaluj i zainicjuj interfejs wiersza poleceń gcloud. Więcej informacji znajdziesz w artykule o instalowaniu gcloud CLI.

  2. Uwierzytelnij się za pomocą interfejsu wiersza poleceń gcloud:

    gcloud auth application-default login
  3. Dokończ proces logowania, aby zapisać dane logowania w lokalnym pliku danych logowania używanym przez ADC.

Więcej informacji znajdziesz w artykule o konfigurowaniu ADC w lokalnym środowisku programistycznym.

Wysyłanie żądania REST

W tym przykładzie przekazujesz 2 nagłówki żądania:

  • Przekaż token OAuth w nagłówku Authorization, używając tego polecenia do wygenerowania tokena:

    gcloud auth application-default print-access-token

    Zwrócony token ma zakres https://www.googleapis.com/auth/cloud-platform.

  • W nagłówku X-Goog-User-Project podaj identyfikator lub nazwę projektu Google Cloud, który ma włączone rozliczenia.

Aby wywołać interfejs Geocoding API za pomocą tokena OAuth, wykonaj te czynności:

  1. W tym przykładowym kodzie zastąp PROJECT_ID identyfikatorem swojego projektu 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"
    
  2. Aby skopiować polecenie curl, kliknij Kopiuj w przykładowym kodzie.

  3. Wklej polecenie w oknie terminala, a następnie je uruchom.

Rozwiązywanie problemów

Jeśli żądanie zwróci komunikat o błędzie informujący, że ten interfejs API nie obsługuje danych logowania użytkownika, zapoznaj się z artykułem Rozwiązywanie problemów z konfiguracją ADC.