In dieser Kurzanleitung wird erläutert, wie Sie eine einfache Java-Befehlszeile einrichten, die Anfragen an die YouTube Data API sendet. In dieser Kurzanleitung wird tatsächlich erläutert, wie Sie zwei API-Anfragen stellen:
- Sie verwenden einen API-Schlüssel, mit dem Sie Ihre Anwendung identifizieren können, um Informationen zum YouTube-Kanal von GoogleDevelopers abzurufen.
- Sie verwenden eine OAuth 2.0-Client-ID, um eine autorisierte Anfrage zu senden, die Informationen zu Ihrem eigenen YouTube-Kanal abruft.
Voraussetzungen
Für diese Kurzanleitung benötigen Sie Folgendes:
- Java 1.7 oder höher.
- Gradle 2.3 oder höher.
- Zugriff auf das Internet und einen Webbrowser.
- Ein Google-Konto.
Schritt 1: Projekt und Anmeldedaten einrichten
Erstellen oder wählen Sie ein Projekt in der API-Konsole aus. Führen Sie in der API Console die folgenden Aufgaben für Ihr Projekt aus:
Suchen Sie im Bibliotheksbereich nach der YouTube Data API v3. Klicken Sie auf den Eintrag für diese API und prüfen Sie, ob die API für Ihr Projekt aktiviert ist.
Erstellen Sie im Bereich Anmeldedaten zwei Anmeldedaten:
API-Schlüssel erstellen Sie verwenden den API-Schlüssel, um API-Anfragen zu senden, für die keine Nutzerautorisierung erforderlich ist. Beispielsweise ist keine Nutzerautorisierung erforderlich, um Informationen zu einem öffentlichen YouTube-Kanal abzurufen.
OAuth 2.0-Client-ID erstellen Setze den Anwendungstyp auf Sonstiges. Für Anfragen, die eine Nutzerautorisierung erfordern, müssen OAuth 2.0-Anmeldedaten verwendet werden. Sie benötigen beispielsweise die Nutzerautorisierung, um Informationen zum YouTube-Kanal des aktuell authentifizierten Nutzers abzurufen.
Laden Sie die JSON-Datei mit Ihren OAuth 2.0-Anmeldedaten herunter. Der Name der Datei lautet
client_secret_CLIENTID.json
, wobeiCLIENTID
die Client-ID für Ihr Projekt ist.
Schritt 2: Projekt vorbereiten
Führen Sie die folgenden Schritte aus, um Ihr Gradle-Projekt vorzubereiten:
Führen Sie in Ihrem Arbeitsverzeichnis die folgenden Befehle aus, um eine neue Projektstruktur zu erstellen:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resources
Verschieben Sie die heruntergeladene JSON-Datei nach dem Erstellen der OAuth 2.0-Client-ID in das Verzeichnis
src/main/resources
unterhalb des Arbeitsverzeichnisses und benennen Sie die Datei inclient_secret.json
um.Öffnen Sie die Datei
build.gradle
in Ihrem Arbeitsverzeichnis und ersetzen Sie den Inhalt durch Folgendes: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' compile 'com.google.apis:google-api-services-youtube:v3-revREVISION-CL_VERSION' }
In der Datei
build.gradle
müssen Sie die Variablen REVISION und CL_VERSION durch zwei Werte aus der Dokumentation zur Clientbibliothek für die YouTube Data API ersetzen. Der folgende Screenshot zeigt die Dokumentation für die YouTube Analytics API. Sie zeigt, wo die beiden Variablen auf der Seite vorkommen.
Schritt 3: Beispiel einrichten und ausführen
Mit dem APIs Explorer-Widget in der Seitenleiste kannst du Beispielcode zum Abrufen von Informationen zum YouTube-Kanal von GoogleDevelopers abrufen. Diese Anfrage verwendet einen API-Schlüssel, um Ihre Anwendung zu identifizieren. Sie benötigt keine Nutzerautorisierung oder spezielle Berechtigungen von dem Nutzer, der das Beispiel ausführt.
- Öffnen Sie die Dokumentation zur Methode channels.list der API.
Auf dieser Seite finden Sie im Abschnitt „Häufige Anwendungsfälle“ eine Tabelle, in der verschiedene gängige Methoden der Methode erläutert werden. Der erste Eintrag in der Tabelle dient zum Auflisten der Ergebnisse nach Kanal-ID.
Klicken Sie auf das Codesymbol für den ersten Eintrag, um den APIs Explorer im Vollbildmodus zu öffnen und auszufüllen.
Links im APIs Explorer im Vollbildmodus wird Folgendes angezeigt:
Unter dem Header Anfrageparameter finden Sie eine Liste der Parameter, die von der Methode unterstützt werden. Die Parameterwerte
part
undid
sollten festgelegt sein. Der Parameterwertid
,UC_x5XG1OV2P6uZZ5FSM9Ttw
, ist die ID für den YouTube-Kanal von GoogleDevelopers.Unterhalb der Parameter befindet sich der Abschnitt Anmeldedaten. Im Drop-down-Menü in diesem Abschnitt sollte der Wert API key angezeigt werden. APIs Explorer verwendet standardmäßig Demo-Anmeldedaten, um Ihnen den Einstieg zu erleichtern. Sie verwenden jedoch Ihren eigenen API-Schlüssel, um das Beispiel lokal auszuführen.
Rechts im APIs Explorer werden Tabs mit Codebeispielen in verschiedenen Sprachen angezeigt. Wählen Sie den Tab Java aus.
Kopieren Sie das Codebeispiel und speichern Sie es in einer Datei mit dem Namen
src/main/java/ApiExample.java
. In jedem Beispiel wird der gleiche Klassenname (ApiExample
) verwendet, sodass Sie die Dateibuild.gradle
nicht ändern müssen, um verschiedene Beispiele auszuführen.Suchen Sie im heruntergeladenen Beispiel nach dem String
YOUR_API_KEY
und ersetzen Sie ihn durch den API-Schlüssel, den Sie in Schritt 1 dieser Kurzanleitung erstellt haben.Führen Sie das Beispiel über die Befehlszeile aus. Führen Sie in Ihrem Arbeitsverzeichnis folgenden Befehl aus:
gradle -q run
Das Beispiel sollte die Anfrage ausführen und die Antwort an
STDOUT
ausgeben.
Schritt 4: Autorisierte Anfrage ausführen
In diesem Schritt ändern Sie das Codebeispiel so, dass anstelle der Informationen zum YouTube-Kanal für Google-Entwickler Informationen zu Ihrem YouTube-Kanal abgerufen werden. Für diese Anfrage ist eine Nutzerautorisierung erforderlich.
Kehren Sie zur Dokumentation für die Methode channels.list der API zurück.
Klicken Sie im Abschnitt „Häufige Anwendungsfälle“ auf das Codesymbol für den dritten Eintrag in der Tabelle. In diesem Anwendungsfall wird die Methode
list
für "Mein Kanal" aufgerufen.Wieder sehen Sie auf der linken Seite des APIs Explorer-Vollbild eine Liste der Parameter gefolgt vom Abschnitt Anmeldedaten. Es gibt jedoch zwei Änderungen aus dem Beispiel, bei denen du Informationen zum GoogleDevelopers-Kanal abgerufen hast:
Im Parameterbereich muss anstelle des Parameterwerts
id
der Parametermine
auftrue
festgelegt werden. Dadurch wird der API-Server angewiesen, Informationen zum Kanal des aktuell authentifizierten Nutzers abzurufen.Im Abschnitt Anmeldedaten sollte im Drop-down-Menü die Option für Google OAuth 2.0 ausgewählt sein.
Wenn Sie außerdem auf den Link Bereiche anzeigen klicken, sollte der Bereich https://www.googleapis.com/auth/youtube.readonly aktiviert sein.
Wählen Sie wie im vorherigen Beispiel den Tab Java aus, kopieren Sie das Codebeispiel und speichern Sie es in
src/main/java/ApiExample.java
.Führen Sie das Beispiel über die Befehlszeile aus. Führen Sie in Ihrem Arbeitsverzeichnis folgenden Befehl aus:
gradle -q run
Im Beispiel sollte versucht werden, ein neues Fenster oder einen neuen Tab in Ihrem Standardbrowser zu öffnen. Wenn dies fehlschlägt, kopieren Sie die URL aus dem Terminal und öffnen Sie sie manuell in Ihrem Browser.
Wenn Sie noch nicht in Ihrem Google-Konto angemeldet sind, werden Sie dazu aufgefordert. Wenn Sie in mehreren Google-Konten angemeldet sind, werden Sie aufgefordert, ein Konto für die Autorisierung auszuwählen.
Klicken Sie auf die Schaltfläche, um Ihrer Anwendung Zugriff auf die im Codebeispiel angegebenen Bereiche zu gewähren.
Das Beispiel wird automatisch fortgesetzt und Sie können den für den Authentifizierungsvorgang verwendeten Browsertab schließen.
Die API-Antwort sollte wieder an
STDOUT
ausgegeben werden.