Konfigurowanie Navigation Connect

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Z tego dokumentu dowiesz się, jak zacząć korzystać z interfejsu Navigation Connect.

Usługi Google Maps Platform są zabezpieczone przed nieautoryzowanym użyciem, ponieważ wywołania interfejsu API muszą zawierać token OAuth.

Tworzenie tokena OAuth

Interfejs Navigation Connect obsługuje uwierzytelnianie za pomocą OAuth 2.0. Google obsługuje typowe scenariusze korzystania z protokołu OAuth 2.0, takie jak serwer WWW.

Z tego dokumentu dowiesz się, jak przekazać token OAuth do wywołania Navigation Connect w środowisku programistycznym. Instrukcje dotyczące używania OAuth w środowisku produkcyjnym znajdziesz w artykule Metody uwierzytelniania w Google.

Informacje o protokole OAuth

Istnieje wiele sposobów tworzenia tokenów dostępu i zarządzania nimi za pomocą OAuth w zależności od środowiska wdrożenia.

Na przykład system Google OAuth 2.0 obsługuje interakcje między serwerami, takie jak interakcje między Twoją aplikacją a usługą Google. W tym scenariuszu potrzebujesz konta usługi, czyli konta, które należy do Twojej aplikacji, a nie do użytkownika. Aplikacja wywołuje interfejsy API Google w imieniu konta usługi, więc użytkownicy nie biorą bezpośrednio udziału w tym procesie. Więcej informacji o metodach uwierzytelniania znajdziesz w artykule Metody uwierzytelniania w Google.

Możesz też używać Navigation Connect w ramach aplikacji mobilnej na Androida lub iOS. Ogólne informacje o używaniu OAuth z Navigation Connect, w tym o zarządzaniu tokenami dostępu w różnych środowiskach wdrażania, znajdziesz w artykule Używanie OAuth 2.0 do uzyskiwania dostępu do interfejsów API Google.

Informacje o zakresach protokołu OAuth

Aby używać protokołu OAuth z interfejsem Navigation Connect, tokenowi OAuth musi być przypisany zakres:

https://www.googleapis.com/auth/cloud-platform

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

Jeśli chcesz wypróbować Navigation Connect za pomocą tokena OAuth, ale nie masz środowiska skonfigurowanego do generowania tokenów, możesz wykonać połączenie zgodnie z procedurą opisaną w tej sekcji.

W tym przykładzie pokazujemy, jak użyć tokena protokołu OAuth udostępnianego przez domyślne uwierzytelnianie aplikacji (ADC) do wykonania wywołania. Informacje o używaniu ADC do wywoływania interfejsów API Google za pomocą bibliotek klienta znajdziesz w artykule Uwierzytelnianie za pomocą bibliotek klienta.

Wymagania wstępne

Zanim wyślesz żądanie REST przy użyciu ADC, użyj Google Cloud CLI, aby przekazać dane logowania do ADC:

  1. Zainstaluj i zainicjuj gcloud CLI.
  2. Aby utworzyć plik danych logowania, uruchom na komputerze lokalnym to polecenie gcloud:

    gcloud auth application-default login
  3. Wyświetli się ekran logowania. Po zalogowaniu się Twoje dane logowania są przechowywane w lokalnym pliku danych logowania używanym przez ADC.

Więcej informacji znajdziesz w artykule Konfigurowanie 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.

  • Przekaż identyfikator lub nazwę projektu w chmurze Google, w którym włączono rozliczenia, w nagłówku X-Goog-User-Project.

W tym przykładzie wywołujemy interfejs Navigation Connect API za pomocą tokena OAuth.

  1. Edytuj pole PROJECT_ID, aby przekazać identyfikator projektu w chmurze Google.

    W razie potrzeby zmień też te ustawienia:

    • ANDROID_APP_ID: nazwa pakietu Android Twojej aplikacji.
    • IOS_APP_ID: identyfikator pakietu iOS Twojej aplikacji.
    #!/bin/bash
    
    trip_id="$(uuidgen)"
    access_token="$(gcloud auth application-default print-access-token)"
    
    curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \
      -H "Authorization: Bearer ${access_token}" \
      -H "Content-Type: application/json" \
      -d '{
      "androidAppId": "ANDROID_APP_ID",
      "iosAppId": "IOS_APP_ID",
    }'
  2. W przykładowym kodzie kliknij ikonę kopiowania, Kliknij ikonę kopiowania., aby skopiować polecenie curl.
  3. Wklej polecenie w oknie terminala i uruchom je.

Odpowiedzią jest obiekt JSON:

{
  "name": "projects/PROJECT_NUMBER/trips/TRIP_ID",
  "authToken": {
    "token": "BASE64_ENCODED_TRIP_TOKEN",
    "expireTime": "2026-03-06T11:09:47.476942Z"
  },
  "state": "NEW",
  "execution": {
    "traveledDistanceMeters": 0,
    "stopAddedInRoute": false
  },
  "createTime": "2026-03-05T23:09:50.768959Z",
  "updateTime": "2026-03-05T23:09:50.768959Z",
}

Ta odpowiedź zawiera te wartości:

  • PROJECT_NUMBER: unikalny identyfikator projektu w postaci długiej liczby całkowitej.
  • TRIP_ID: Identyfikator przejazdu wygenerowany przez backend w formacie UUIDv4.
  • BASE64_ENCODED_TRIP_TOKEN: uwierzytelniony token zwrócony przez metodę createTrip. Przekaż ten token do aplikacji mobilnej, aby rozpocząć śledzoną szczegółową nawigację w Mapach Google lub Waze.

Rozwiązywanie problemów

Jeśli w odpowiedzi na Twoje żądanie pojawi się komunikat o błędzie informujący, że dane logowania użytkownika nie są obsługiwane przez ten interfejs API, zapoznaj się z artykułem Rozwiązywanie problemów z konfiguracją ADC.

Co dalej?

Następnym krokiem w konfigurowaniu interfejsu Navigation Connect API jest skonfigurowanie kont usługi, aby umożliwić bezpieczną komunikację między serwerami między infrastrukturą backendu a Mapami Google i Waze.

Konfigurowanie konta usługi