Przykładowe kody

Narzędzie Google APIs Explorer dynamicznie generuje przykłady kodu. Te przykłady kodu można kopiować i uruchamiać lokalnie. Aby wyświetlić przykłady, w panelu bocznym narzędzia APIs Explorer kliknij Pełny ekran . Na rysunku poniżej widać rozwinięte narzędzie APIs Explorer w trybie pełnoekranowym:

Panel pełnoekranowy narzędzia APIs Explorer dla interfejsu Google Books API
Rysunek 2. Panel pełnoekranowy w APIs Explorer dla interfejsu Google Books API.

Domyślnie Eksplorator interfejsów API pokazuje, jak używać cURL do wykonywania żądań. Niektóre interfejsy API mogą też zawierać przykłady w innych językach, takich jak JavaScript, Java i Python.

Uruchamianie przykładowych fragmentów kodu lokalnie

Na kartach poniżej znajdziesz wymagania wstępne i instrukcje uruchamiania przykładowych kodów. Aby uruchomić przykładowy kod, musisz wygenerować i użyć własnych danych logowania autoryzacji. Wyjaśnienie, jak utworzyć projekt i wygenerować dane logowania, znajdziesz w dokumentacji konkretnego interfejsu API Google.

W zależności od typu danych (publicznych lub prywatnych), do których metoda uzyskuje dostęp, dane logowania mogą być jednymi z tych:

  • W przypadku danych publicznych dane logowania to klucz interfejsu API.
  • W przypadku danych prywatnych dane logowania to client_secret.json zawierający identyfikator klienta OAuth 2.0 i tajny klucz klienta lub token dostępu OAuth 2.0.

cURL

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W konsoli Google Cloud utwórz klucz interfejsu API.
  3. W konsoli Google Cloud utwórz dane uwierzytelniające identyfikatora klienta OAuth dla aplikacji internetowej i użyj https://developers.google.com/oauthplayground jako identyfikatora URI przekierowania.
  4. W OAuth 2.0 Playground kliknij Konfiguracja OAuth 2.0 .
  5. Zaznacz Użyj własnych danych logowania.
  6. Wpisz identyfikator i tajny klucz klienta wygenerowane w kroku 3.
  7. W polu zakresów wpisz zakres, który ma być używany w metodzie, i kliknij Authorize APIs (Autoryzuj interfejsy API).
  8. (opcjonalnie) Jeśli pojawi się ekran logowania, wybierz konto, którego chcesz użyć.
  9. (opcjonalnie) Jeśli pojawi się ekran autoryzacji, kliknij Akceptuj.
  10. Kliknij Wymień kod autoryzacji na tokeny. Zwracany jest token.
  11. W przykładowym kodzie cURL zastąp [YOUR_API_KEY] kluczem interfejsu API wygenerowanym w kroku 2:'https://www.googleapis.com/drive/v3/files?key=[YOUR_API_KEY]' \
  12. W przykładowym kodzie cURL zastąp znak [YOUR_ACCESS_TOKEN] tokenem dostępu wygenerowanym w kroku 10:--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \

Uruchomienie przykładowego kodu

W wierszu poleceń wykonaj polecenie cURL. Polecenie powinno wyglądać podobnie do tego:

curl \
'https://www.googleapis.com/drive/v3/files?key=AIzaSyBiKcaoXmVApwnT24hitQG_dwjGvAj6Ddw' \
--header 'Authorization: Bearer ya29.a0ARrdaM_yQn9MWBpJgKPx880BSnRYIizRYIDz0JN9e66nSliIYpqNXmPsvv2ccfplCTG_U4b1' \
--header 'Accept: application/json' \
--compressed

JavaScript

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W konsoli Google Cloud utwórz klucz interfejsu API.
  3. W konsoli Google Cloud utwórz dane logowania identyfikatora klienta OAuth dla „Aplikacji internetowej” i ustaw autoryzowane źródła JavaScript, aby zidentyfikować adres URL, z którego będziesz wysyłać żądania, np. http://localhost.
  4. Skopiuj pełny przykładowy kod do pliku lokalnego dostępnego dla serwera WWW, np. /var/www/html/example.html.
  5. W przykładowym kodzie znajdź wiersz, który ustawia klucz interfejsu API lub identyfikator klienta, i zastąp wartość wartościami wygenerowanymi w krokach 2 i 3:

    • Klucz interfejsu API: gapi.client.setApiKey(YOUR_API_KEY);
    • Identyfikator klienta OAuth 2.0:gapi.client.init({ 'clientId': 'YOUR_CLIENT_ID',

Uruchomienie przykładowego kodu

  1. Otwórz plik w przeglądarce, np. http://localhost/example.html. Zalecamy korzystanie z przeglądarki z konsolą debugowania, np. Google Chrome.
  2. (opcjonalnie) Jeśli pojawi się ekran logowania, wybierz konto, którego chcesz użyć.
  3. (opcjonalnie) Jeśli pojawi się ekran autoryzacji, kliknij Akceptuj. Konsola debugowania powinna wyświetlić odpowiedź metody jako obiekt JSON.

Java

Wymagania wstępne

  • Java 1.7 lub nowsza.
  • Gradle w wersji 7 lub nowszej.

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W zależności od typu danych, do których metoda ma dostęp, utwórz klucz API (dane publiczne) lub identyfikator klienta OAuth 2.0 (dane prywatne).
  3. Ustaw typ aplikacji na Aplikacja na komputery.
  4. Jeśli masz utworzony identyfikator klienta OAuth 2.0, pobierz plik JSON zawierający dane logowania OAuth 2.0. Nazwa tego pliku jest podobna do client_secret_CLIENTID.json, gdzie CLIENTID to identyfikator klienta Twojego projektu.
  5. W katalogu roboczym uruchom te polecenia, aby utworzyć nową strukturę projektu:

    $ gradle init --type basic
    $ mkdir -p src/main/java src/main/resources
    
  6. Jeśli w kroku 2 utworzono identyfikator klienta OAuth 2.0, zmień nazwę pobranego pliku JSON na client_secret.json.

  7. Zapisz plik o nowej nazwie w katalogu src/main/resources utworzonym w kroku 5.

  8. W katalogu roboczym otwórz plik build.gradle i zastąp jego zawartość tym kodem:

    apply plugin: 'java'
    apply plugin: 'application'
    
    mainClassName = 'ApiExample'
    sourceCompatibility = 1.7
    targetCompatibility = 1.7
    version = '1.0'
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        compile 'com.google.api-client:google-api-client:1.23.0'
        compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0'
        API_SPECIFIC_DEPENDENCY
    }
    
  9. W pliku build.gradle zastąp wiersz API_SPECIFIC_DEPENDENCY instrukcją kompilacji kodu dla wywoływanego interfejsu API. Oto przykład dla YouTube Analytics API:

    compile 'com.google.apis:google-api-services-youtubeAnalytics:v2-rev16-1.23.0'
    

    Instrukcja jest zgodna z tym szablonem:

    compile 'com.google.apis:google-api-services-API_NAME:API_VERSION-   revREVISION-CL_VERSION'
    

Gdzie:

  • API_NAME to nazwa interfejsu API podana na GitHubie. Aby znaleźć nazwę, kliknij link do wersji obok interfejsu API na stronie Obsługiwane interfejsy API Google. Link do wersji przekierowuje do GitHub. Nazwa interfejsu API znajduje się w górnej części strony i jest poprzedzona symbolem googleapis/google-apis-services-. Na przykład w przypadku wersji 3 interfejsu Drive API API_NAME to drive.
  • API_VERSION to wersja interfejsu API podana poniżej nazwy interfejsu API na stronie Obsługiwane interfejsy API Google.
  • REVISION to numer wersji podany w dokumentacji JavaDoc interfejsu API. Referencje narzędzia JavaDoc znajdziesz na stronie:https://googleapis.dev/java/google-api-services-API_NAME/latest/index.html
  • CL_VERSION to wersja biblioteki klienta. Ta wartość pojawia się też w dokumentacji JavaDoc.
  • W katalogu roboczym skopiuj przykładowy kod z narzędzia APIs Explorer do pliku src/main/java/ApiExample.java. (Nazwa klasy w każdym przykładzie to ApiExample, więc nie musisz modyfikować pliku build.gradle, aby uruchamiać różne przykłady.

Uruchomienie przykładowego kodu

Aby uruchomić przykład, użyj tego polecenia:

  gradle -q run

Przykładowy kod powinien wykonać żądanie do interfejsu API i wydrukować odpowiedź w STDOUT. Możesz też sprawdzić usługę, do której wysyłasz wywołania, aby zobaczyć efekty żądań zapisujących dane.

Node.js

Wymagania wstępne

  • Node.js
  • Biblioteka klienta interfejsów API Google dla Node.js:

    • Jeśli biblioteka klienta nie została wcześniej zainstalowana, uruchom to polecenie:
    npm install googleapis --save
    
    • Jeśli biblioteka klienta została już zainstalowana, zalecamy jej zaktualizowanie, aby mieć pewność, że zawiera najnowsze klasy biblioteki, którą testujesz. Aby zaktualizować bibliotekę klienta, uruchom to polecenie:
    npm update googleapis --save
    

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W zależności od typu danych, do których metoda ma dostęp, utwórz klucz API (dane publiczne) lub identyfikator klienta OAuth 2.0 (dane prywatne).
  3. Ustaw typ aplikacji na Aplikacja na komputery.
  4. Jeśli masz utworzony identyfikator klienta OAuth 2.0, pobierz plik JSON zawierający dane logowania OAuth 2.0. Nazwa tego pliku jest podobna do client_secret_CLIENTID.json, gdzie CLIENTID to identyfikator klienta Twojego projektu.
  5. Skopiuj przykładowy kod do pliku lokalnego i zmodyfikuj go, aby prawidłowo identyfikował klucz interfejsu API lub plik z hasłami klienta. W przykładzie wartość klucza interfejsu API to YOUR_API_KEY, a lokalizacja pliku z hasłami to YOUR_CLIENT_SECRET_FILE.json.

Uruchomienie przykładowego kodu

Aby uruchomić przykład, użyj tego polecenia:

  node sample.js

Większość przykładów drukuje odpowiedź interfejsu API (lub coś innego) w STDOUT.

PHP

Wymagania wstępne

  • PHP w wersji 5.4 lub nowszej z interfejsem wiersza poleceń i rozszerzeniem JSON.
  • Narzędzie do zarządzania zależnościami Composer zainstalowane globalnie.
  • Biblioteka klienta interfejsów API Google dla języka PHP:

    • Jeśli biblioteka klienta nie została wcześniej zainstalowana, uruchom to polecenie:

      composer require google/apiclient:^2.0
      
    • Jeśli biblioteka klienta została już zainstalowana, zalecamy jej zaktualizowanie, aby mieć pewność, że korzystasz z najnowszych klas biblioteki, którą testujesz. Aby zaktualizować bibliotekę klienta, uruchom to polecenie:

      composer update google/apiclient --with-dependencies
      

Uruchomienie przykładowego kodu

Aby uruchomić przykład, użyj tego polecenia:

  php sample.php

Większość przykładów drukuje odpowiedź interfejsu API (lub coś innego) w STDOUT.

Python

Wymagania wstępne

  • Python 2.7 lub Python 3.5+
  • Narzędzie do zarządzania pakietami pip
  • Biblioteka klienta interfejsów API Google dla języka Python:

    pip install --upgrade google-api-python-client
    
  • Biblioteki google-auth-oauthlibgoogle-auth-httplib2 do autoryzacji użytkowników:

    pip install --upgrade google-auth-oauthlib google-auth-httplib2
    

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W zależności od typu danych, do których metoda ma dostęp, utwórz klucz API (dane publiczne) lub identyfikator klienta OAuth 2.0 (dane prywatne).
  3. Ustaw typ aplikacji na Aplikacja na komputery.
  4. Jeśli masz utworzony identyfikator klienta OAuth 2.0, pobierz plik JSON zawierający dane logowania OAuth 2.0. Nazwa tego pliku jest podobna do client_secret_CLIENTID.json, gdzie CLIENTID to identyfikator klienta Twojego projektu.
  5. Skopiuj przykładowy kod do pliku lokalnego i zmodyfikuj go, aby prawidłowo identyfikował klucz interfejsu API lub plik z hasłami klienta. W przykładzie wartość klucza interfejsu API to YOUR_API_KEY, a lokalizacja pliku z hasłami to YOUR_CLIENT_SECRET_FILE.json.

Uruchomienie przykładowego kodu

Aby uruchomić przykład, użyj tego polecenia:

  python sample.py

Większość przykładów drukuje odpowiedź interfejsu API (lub coś innego) w STDOUT.

Ruby

Wymagania wstępne

  • Ruby w wersji 2.0 lub nowszej
  • Biblioteka klienta interfejsów API Google dla języka Ruby:

    gem install google-api-client`
    

Konfigurowanie

  1. Wykonaj instrukcje podane w dokumentacji interfejsu API, aby utworzyć lub wybrać projekt dla aplikacji i włączyć interfejs API.
  2. W zależności od typu danych, do których metoda ma dostęp, utwórz klucz API (dane publiczne) lub identyfikator klienta OAuth 2.0 (dane prywatne).
  3. Ustaw typ aplikacji na Aplikacja na komputery.
  4. Jeśli masz utworzony identyfikator klienta OAuth 2.0, pobierz plik JSON zawierający dane logowania OAuth 2.0. Nazwa tego pliku jest podobna do client_secret_CLIENTID.json, gdzie CLIENTID to identyfikator klienta Twojego projektu.
  5. Skopiuj przykładowy kod do pliku lokalnego i zmodyfikuj go, aby prawidłowo identyfikował klucz interfejsu API lub plik z hasłami klienta. W przykładzie wartość klucza interfejsu API to YOUR_API_KEY, a lokalizacja pliku z hasłami to YOUR_CLIENT_SECRET_FILE.json.

Uruchomienie przykładowego kodu

Aby uruchomić przykład, użyj tego polecenia:

  ruby sample.rb

Większość przykładów drukuje odpowiedź interfejsu API (lub coś innego) w STDOUT.

Rozwiązywanie problemów z próbkami

Nie pojawia się okno autoryzacji

APIs Explorer używa wyskakującego okienka, aby przyznać dostęp do Twoich danych prywatnych. Jeśli przeglądarka blokuje wyskakujące okienka, to okienko się nie pojawi i nie będziesz mieć możliwości przyznania dostępu.

Jeśli na ekranie autoryzacji klikniesz „Zezwól” i nic się nie stanie, spróbuj zmienić ustawienia wyskakujących okienek w przeglądarce, aby je włączyć.

Wystąpił błąd 401 lub 403

Jeśli podczas testowania próbki pojawi się błąd 401 lub 403, prawdopodobnie jest to spowodowane problemem z jednym z tych elementów:

  • Interfejs API nie jest włączony w Twoim projekcie. Zapoznaj się z instrukcjami dotyczącymi interfejsu API, w których znajdziesz informacje o tym, jak utworzyć projekt i włączyć interfejs API.
  • Używasz nieprawidłowego typu autoryzacji (klucza API zamiast OAuth 2.0).
  • Używasz OAuth 2.0, ale z zbyt wąskim zakresem.
  • Podczas konfigurowania klucza API ustawiasz ograniczenia, aby zapobiec nieautoryzowanemu użyciu danych logowania. Jednak żądanie nie spełnia tych ograniczeń. Więcej informacji znajdziesz w artykule Korzystanie z ograniczeń dotyczących kluczy interfejsu API.

Otrzymano ostrzeżenie dotyczące treści mieszanych

Jeśli używasz Google Cloud Endpoints i uruchamiasz punkt końcowy na serwerze deweloperskim, przeglądarka może wyświetlać ostrzeżenie o treściach mieszanych. Ten komunikat ostrzegawczy pojawia się, ponieważ Eksplorator interfejsów API jest wczytywany przez HTTPS, ale gdy interfejs API działa lokalnie, jest hostowany przez HTTP.

Aby ukryć to ostrzeżenie w Chrome, rozpocznij sesję Chrome ze specjalnymi flagami w ten sposób:

path/to/chrome --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:port

Na przykład:

/usr/bin/google-chrome-stable --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080

To ostrzeżenie należy ukrywać tylko na potrzeby testów lokalnych.

Tylko JavaScript: gapi nie jest zdefiniowany

Błąd „gapi is not defined” (gapi nie jest zdefiniowany) występuje, gdy kod JavaScript próbuje wywołać bibliotekę klienta interfejsu API Google dla JavaScriptu, zanim zostanie ona wczytana. Upewnij się, że kod odwołujący się do zmiennej gapi nie jest wywoływany, dopóki nie zostanie załadowana biblioteka klienta.