Konfigurowanie interfejsu Roads API

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

W tym dokumencie opisano czynności, które należy wykonać, aby zacząć korzystać z Roads API.

Wymagania wstępne

Ta procedura przeprowadzi Cię przez proces konfigurowania konta Google Cloud i projektu w chmurze Google Cloud z włączonymi płatnościami. Musisz też wiedzieć, jak naliczane są opłaty za korzystanie z Roads API.

  1. Sprawdź płatności i koszty użytkowania na stronie Użytkowanie i płatności w Roads API.
  2. Sprawdź, czy masz konto Google Cloud.

    Zaloguj się w konsoli Google Cloud
  3. Sprawdź, czy masz projekt Google Cloud z włączonymi płatnościami.

    Otwórz stronę Płatności
    1. Wybierz projekt, aby otworzyć stronę Płatności.
    2. Na stronie Płatności:

      • Jeśli w wybranym projekcie płatności są już włączone i masz tylko jedno konto rozliczeniowe, otworzy się strona Płatności.
      • Jeśli masz kilka kont rozliczeniowych, kliknij Przejdź do połączonego konta, aby wyświetlić szczegóły konta rozliczeniowego powiązanego z projektem.
      • Jeśli konto rozliczeniowe istnieje, ale nie jest powiązane z projektem, pojawi się prośba o połączenie konta rozliczeniowego z projektem.
      • Jeśli nie masz konta rozliczeniowego lub chcesz utworzyć nowe, wybierz Zarządzaj kontami rozliczeniowymi, aby utworzyć nowe konto rozliczeniowe. Więcej informacji znajdziesz w artykule o tworzeniu nowego samoobsługowego konta rozliczeniowego Cloud.

Włącz API

Zanim zaczniesz korzystać z Roads API, musisz włączyć tę usługę w projekcie Google Cloud za pomocą konsoli Google Cloud lub polecenia gcloud.

Aby włączyć interfejs API:

Konsola

  1. Otwórz stronę produktu w konsoli Google Cloud:

    Włącz Roads API
  2. Kliknij przycisk Włącz.

gcloud

gcloud services enable \
    --project "PROJECT" \
    "roads.googleapis.com"

Więcej informacji o pakiecie SDK Google Cloud, instalacji pakietu SDK Cloud i tych poleceniach:

Uzyskiwanie klucza interfejsu API do użycia z: Roads API

Usługi Google Maps Platform są zabezpieczone przed nieautoryzowanym użyciem, ponieważ wymagają, aby wywołania interfejsu API zawierały klucz interfejsu API.

Klucz interfejsu API to unikalny ciąg alfanumeryczny, który wiąże Twoje konto rozliczeniowe Cloud i projekt w chmurze Google Cloud z żądaniem wysyłanym przez aplikację do interfejsu API lub pakietu SDK Google Maps Platform. Aby utworzyć nowy klucz lub dodać interfejs API bądź pakiet SDK do istniejącego klucza, wykonaj te instrukcje.

Konsola

  1. Otwórz stronę Google Maps Platform > Klucze i dane logowania.

    Otwórz stronę Klucze i dane uwierzytelniające

  2. Jeśli pojawi się taka prośba, wybierz projekt.
  3. Wykonaj jedną z tych czynności:

    • Utwórz nowy klucz:

      1. Kliknij Utwórz dane logowania > Klucz interfejsu API.
      2. W panelu Utwórz klucz interfejsu API otwórz listę Wybierz ograniczenia interfejsu API.
      3. Odznacz wszystkie interfejsy API, których ten klucz nie potrzebuje, i upewnij się, że interfejs Roads API jest zaznaczony.
      4. Kliknij Utwórz. W panelu pojawi się nowy klucz interfejsu API.
    • Użyj istniejącego klucza:

      1. Kliknij nazwę klucza.
      2. Na liście Wybierz ograniczenia interfejsu API wybierz Roads API.
      3. Kliknij Zapisz.

    Wybranie interfejsu API w tym miejscu nie powoduje jego włączenia. Upewnij się, że interfejs Roads API jest włączony na stronie Biblioteka API.

  4. Aby później wyświetlić ciąg klucza, otwórz stronę Klucze i dane uwierzytelniające i kliknij Pokaż klucz.

Jeśli konsola wygląda inaczej niż w tych krokach, zapoznaj się z artykułami Tworzenie klucza interfejsu API i Dodawanie ograniczeń interfejsu API w dokumentacji Google Cloud.

gcloud

W poniższych poleceniach zastąp PROJECT_ID identyfikatorem swojego projektu.

  • Utwórz nowy klucz: uruchom to polecenie i zastąp DISPLAY_NAME nazwą klucza.

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=roads.googleapis.com

    Więcej informacji o pakiecie SDK Google Cloud, instalacji pakietu SDK Cloud i tych poleceniach:

  • Użyj istniejącego klucza: uruchom to polecenie i zastąp KEY_ID identyfikatorem klucza. Flaga --append zachowuje interfejsy API, które klucz już dopuszcza. Bez niego polecenie zastępuje je.

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=roads.googleapis.com

    Więcej informacji o pakiecie SDK Google Cloud, instalacji pakietu SDK Cloud i tych poleceniach:

    Identyfikator klucza nie jest ciągiem klucza ani wyświetlaną nazwą. Aby go znaleźć, uruchom gcloud services api-keys list --project="PROJECT_ID". Identyfikator to ostatnia część pola name: projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.

Aby zobaczyć ciąg klucza, uruchom gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID".

Wysyłanie żądania do interfejsu API

Wyślij żądanie Roads API, aby zwrócić odpowiedź JSON, która przyciąga określone punkty do geometrii drogi. Do każdego żądania musisz dołączyć ciąg alfanumeryczny klucza interfejsu API, a w przypadku żądań zawierających klucz interfejsu API musisz używać protokołu HTTPS.

  1. Kliknij API_KEY w poniższym kodzie, aby wstawić ciąg alfanumeryczny klucza:

    curl -L -X GET 'https://roads.googleapis.com/v1/snapToRoads?path=-35.27801%2C149.12958%7C-35.28032%2C149.12907%7C-35.28099%2C149.12929%7C-35.28144%2C149.12984%7C-35.28194%2C149.13003%7C-35.28282%2C149.12956%7C-35.28302%2C149.12881%7C-35.28473%2C149.12836&interpolate=true&key=YOUR_API_KEY'
    
  2. Kliknij ikonę kopiowania w przykładowym kodzie Kliknij ikonę kopiowania., aby skopiować polecenie curl.
  3. Wklej polecenie w oknie terminala i uruchom je.

Odpowiedzią jest obiekt JSON w formacie:

{
  "snappedPoints": [
    {
      "location": {
        "latitude": -35.278004899930188,
        "longitude": 149.129531998742
      },
      "originalIndex": 0,
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    {
      "location": {
        "latitude": -35.2784195,
        "longitude": 149.12946589999999
      },
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    ...
    {
      "location": {
        "latitude": -35.284727644851415,
        "longitude": 149.12833853807396
      },
      "originalIndex": 7,
      "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA"
    }
  ]
}

Stosowanie ograniczeń klucza interfejsu API

Google zdecydowanie zaleca ograniczenie kluczy interfejsu API przez ograniczenie ich użycia tylko do tych interfejsów API i aplikacji, które ich potrzebują. Ograniczenie kluczy interfejsu API zwiększa bezpieczeństwo aplikacji, chroniąc ją przed nieuzasadnionymi żądaniami. Klucze interfejsu API obsługują 2 rodzaje ograniczeń:

  • Ograniczenia interfejsów API określają, które pakiety SDK i interfejsy API można wywoływać za pomocą klucza interfejsu API. Konsola i gcloud CLI wymagają co najmniej jednego ograniczenia interfejsu API podczas tworzenia klucza.
  • Ograniczenia aplikacji określają, które witryny, adresy IP lub aplikacje mogą korzystać z klucza interfejsu API.

Więcej informacji o stosowaniu ograniczeń znajdziesz w artykule o ograniczaniu kluczy interfejsu API.

Co dalej?

Po włączeniu usługi Roads API i wysłaniu udanego żądania zapoznaj się z artykułem Snap to Roads , aby dowiedzieć się więcej o korzystaniu z interfejsu API.