Z tego przewodnika dowiesz się, jak skonfigurować prostą stronę, która wysyła żądania do interfejsu YouTube Data API. W tym krótkim wprowadzeniu wyjaśniamy, jak wysłać 2 żądania do interfejsu API:
- Aby pobrać informacje o kanale GoogleDevelopers w YouTube, użyjesz klucza interfejsu API, który identyfikuje Twoją aplikację.
- Aby przesłać autoryzowane żądanie, które pobiera informacje o Twoim kanale w YouTube, użyjesz identyfikatora klienta OAuth 2.0.
Wymagania wstępne
Aby uruchomić ten przewodnik, musisz mieć:
- Python 2.4 lub nowszy (do obsługi serwera WWW)
- Dostęp do internetu i przeglądarki.
- konto Google;
Krok 1. Skonfiguruj projekt i dane logowania
Utwórz lub wybierz projekt w Konsoli interfejsów API. Wykonaj w konsoli interfejsów API te czynności dotyczące projektu:
W panelu biblioteki wyszukaj interfejs YouTube Data API v3. Kliknij pozycję tego interfejsu API i upewnij się, że jest on włączony w Twoim projekcie.
W panelu danych logowania utwórz 2 zestawy danych logowania:
Utwórz klucz interfejsu API Klucz interfejsu API będzie służyć do wysyłania żądań interfejsu API, które nie wymagają autoryzacji użytkownika. Na przykład nie musisz mieć autoryzacji użytkownika, aby pobrać informacje o publicznym kanale w YouTube.
Utwórz identyfikator klienta OAuth 2.0 Ustaw typ aplikacji na Aplikacja internetowa. W przypadku żądań wymagających autoryzacji użytkownika musisz używać danych logowania OAuth 2.0. Na przykład musisz uzyskać autoryzację użytkownika, aby pobrać informacje o kanale YouTube aktualnie uwierzytelnionego użytkownika.
W polu Autoryzowane źródła JavaScriptu wpisz adres URL
http://localhost:8000
. Pole Autoryzowane identyfikatory URI przekierowania możesz pozostawić puste.
Krok 2. Skonfiguruj i uruchom przykład
Użyj widżetu API Explorer w panelu bocznym, aby uzyskać przykładowy kod do pobierania informacji o kanale GoogleDevelopers w YouTube. To żądanie używa klucza interfejsu API do identyfikowania aplikacji i nie wymaga autoryzacji użytkownika ani specjalnych uprawnień od użytkownika uruchamiającego przykład.
- Otwórz dokumentację metody channels.list interfejsu API.
Na tej stronie w sekcji „Typowe przypadki użycia” znajduje się tabela, która wyjaśnia kilka typowych sposobów użycia tej metody. Pierwsza pozycja w tabeli dotyczy wyników wyświetlania według identyfikatora kanału.
Kliknij symbol kodu przy pierwszej pozycji, aby otworzyć i wypełnić narzędzie APIs Explorer na pełnym ekranie.
Po lewej stronie narzędzia APIs Explorer w trybie pełnoekranowym widać:
Pod nagłówkiem Parametry żądania znajduje się lista parametrów obsługiwanych przez tę metodę. Wartości parametrów
part
iid
powinny być ustawione. Wartość parametruid
, czyliUC_x5XG1OV2P6uZZ5FSM9Ttw
, to identyfikator kanału GoogleDevelopers w YouTube.Pod parametrami znajduje się sekcja Dane logowania. Menu w tej sekcji powinno zawierać wartość Klucz interfejsu API. Eksplorator interfejsów API domyślnie używa danych logowania wersji demonstracyjnej, aby ułatwić rozpoczęcie pracy. Aby uruchomić przykład lokalnie, użyjesz własnego klucza interfejsu API.
Po prawej stronie eksploratora interfejsów API na pełnym ekranie znajdują się karty z przykładami kodu w różnych językach. Wybierz kartę JavaScript.
Skopiuj przykładowy kod i zapisz go w pliku o nazwie
example.html
.W pobranym przykładzie znajdź ciąg znaków
YOUR_API_KEY
i zastąp go kluczem interfejsu API utworzonym w kroku 1 tego przewodnika.Uruchom serwer WWW za pomocą tego polecenia z katalogu roboczego:
Python 2.x
python -m SimpleHTTPServer 8000
Python 3.x
python -m http.server 8000
Otwórz plik example.html w przeglądarce. Otwórz też narzędzia deweloperskie przeglądarki, np. „Narzędzia dla programistów” w Chrome.
Kliknij przycisk Wczytaj na stronie, aby wczytać bibliotekę klienta interfejsów API Google w JavaScript. Po kliknięciu przycisku w konsoli dewelopera powinna się wyświetlić informacja o wczytaniu klienta GAPI.
Aby wysłać żądanie do interfejsu API, kliknij przycisk Wykonaj. W konsoli dewelopera powinna się wtedy wyświetlić odpowiedź interfejsu API.
Krok 3. Uruchom autoryzowane żądanie
W tym kroku zmodyfikujesz przykładowy kod, aby zamiast pobierać informacje o kanale GoogleDevelopers w YouTube, pobierał informacje o Twoim kanale w YouTube. To żądanie wymaga autoryzacji użytkownika.
Wróć do dokumentacji metody channels.list interfejsu API.
W sekcji „Typowe przypadki użycia” kliknij symbol kodu przy trzeciej pozycji na liście w tabeli. W tym przypadku chodzi o wywołanie metody
list
dla „my channel”.Po lewej stronie narzędzia APIs Explorer w trybie pełnoekranowym zobaczysz listę parametrów, a za nią sekcję Dane logowania. W porównaniu z przykładem, w którym pobierasz informacje o kanale GoogleDevelopers, występują jednak 2 różnice:
W sekcji parametrów zamiast wartości parametru
id
powinna być ustawiona wartość parametrumine
natrue
. To polecenie nakazuje serwerowi API pobranie informacji o kanale aktualnie uwierzytelnionego użytkownika.W sekcji Dane logowania w menu powinno być wybrane Google OAuth 2.0.
Jeśli klikniesz link Pokaż zakresy, powinien być zaznaczony zakres https://www.googleapis.com/auth/youtube.readonly.
Podobnie jak w poprzednim przykładzie wybierz kartę JavaScript, skopiuj przykładowy kod i zapisz go w
example.html
.W kodzie znajdź ciąg
YOUR_CLIENT_ID
i zastąp go identyfikatorem klienta utworzonym w kroku 1 tego krótkiego wprowadzenia.Uruchom serwer WWW za pomocą tego polecenia z katalogu roboczego:
Python 2.x
python -m SimpleHTTPServer 8000
Python 3.x
python -m http.server 8000
Otwórz plik
http://localhost:8000/example.html
w przeglądarce. Otwórz narzędzia deweloperskie przeglądarki, np. „Narzędzia dla programistów” w przeglądarce Chrome.Kliknij na stronie przycisk authorize and load (autoryzuj i wczytaj), aby wczytać bibliotekę klienta JavaScript Google API i rozpocząć proces autoryzacji. Powinien pojawić się monit o przyznanie aplikacji uprawnień do odczytywania danych z Twojego konta YouTube.
Jeśli przyznasz uprawnienia, w konsoli dewelopera powinny się wyświetlić komunikaty informujące o tym, że logowanie się powiodło i że klient interfejsu API został wczytany.
Aby wysłać żądanie do interfejsu API, kliknij przycisk Wykonaj. W konsoli dewelopera powinna się wtedy wyświetlić odpowiedź interfejsu API.