Java-Kurzanleitung

In dieser Kurzanleitung wird beschrieben, wie Sie eine einfache Java-Befehlszeilenanwendung einrichten, die Anfragen an die YouTube Data API sendet. In dieser Kurzanleitung wird beschrieben, wie Sie zwei API-Anfragen stellen:

  1. Sie verwenden einen API-Schlüssel, der Ihre Anwendung identifiziert, um Informationen zum YouTube-Kanal „GoogleDevelopers“ abzurufen.
  2. Sie verwenden eine OAuth 2.0-Client-ID, um eine autorisierte Anfrage zu senden, mit der Informationen zu Ihrem eigenen YouTube-Kanal abgerufen werden.

Vorbereitung

Für diese Kurzanleitung benötigen Sie Folgendes:

Schritt 1: Projekt und Anmeldedaten einrichten

Erstellen Sie ein Projekt in der Cloud Console oder wählen Sie ein Projekt aus. Führen Sie in der Cloud Console für Ihr Projekt die folgenden Aufgaben aus:

  1. 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.

  2. Erstellen Sie im Bereich „Anmeldedaten“ zwei Anmeldedaten:

    1. API-Schlüssel erstellen Sie verwenden den API-Schlüssel, um API-Anfragen zu stellen, für die keine Nutzerautorisierung erforderlich ist. So ist beispielsweise keine Nutzerautorisierung erforderlich, um Informationen zu einem öffentlichen YouTube-Kanal abzurufen.

    2. OAuth 2.0-Client-ID erstellen Legen Sie den Anwendungstyp auf Desktop-App fest. Sie benötigen OAuth 2.0-Anmeldedaten für Anfragen, die eine Nutzerautorisierung erfordern. Sie benötigen beispielsweise eine Nutzerautorisierung, um Informationen zum YouTube-Kanal des aktuell authentifizierten Nutzers abzurufen.

      Laden Sie die JSON-Datei mit Ihren OAuth 2.0-Anmeldedaten herunter. Die Datei hat einen Namen wie client_secret_CLIENTID.json, wobei CLIENTID die Client-ID für Ihr Projekt ist.

Schritt 2: Projekt vorbereiten

Führen Sie die folgenden Schritte aus, um Ihr Gradle-Projekt vorzubereiten:

  1. 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
    
  2. Verschieben Sie die JSON-Datei, die Sie nach dem Erstellen Ihrer OAuth 2.0-Client-ID heruntergeladen haben, in das Verzeichnis src/main/resources unter Ihrem Arbeitsverzeichnis und benennen Sie die Datei in client_secret.json um.

  3. Öffnen Sie die Datei build.gradle in Ihrem Arbeitsverzeichnis und ersetzen Sie ihren 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'
    }
  4. In der Datei build.gradle müssen Sie die Variablen REVISION und CL_VERSION durch zwei Werte aus der Dokumentation der Clientbibliothek für die YouTube Data API ersetzen. Der Screenshot unten zeigt die Dokumentation für die YouTube Analytics API. Dort ist zu sehen, wo die beiden Variablen auf der Seite erscheinen.

    Screenshot der JavaDoc-Referenz, die zeigt, wie Werte für die Variablen „REVISION“ und „CL_VERSION“ gefunden werden

Schritt 3: Beispiel einrichten und ausführen

Verwenden Sie das APIs Explorer-Widget in der Seitenleiste, um Beispielcode zum Abrufen von Informationen zum YouTube-Kanal „GoogleDevelopers“ zu erhalten. Bei dieser Anfrage wird ein API-Schlüssel verwendet, um Ihre Anwendung zu identifizieren. Sie erfordert keine Nutzerautorisierung oder spezielle Berechtigungen des Nutzers, der das Beispiel ausführt.

  1. Öffnen Sie die Dokumentation für die Methode channels.list der API.
  2. Auf dieser Seite finden Sie im Abschnitt „Häufige Anwendungsfälle“ eine Tabelle, in der verschiedene gängige Verwendungsarten der Methode beschrieben werden. Der erste Eintrag in der Tabelle bezieht sich auf die Auflistung von Ergebnissen nach Channel-ID.

    Klicken Sie auf das Codesymbol für den ersten Eintrag, um den Vollbild-APIs Explorer zu öffnen und auszufüllen.

    Bild, das die Position des Codesymbollinks in der Tabelle zeigt, in der Anwendungsfälle für die channels.list-Dokumentation aufgeführt sind. Der Alt-Text für dieses Bild identifiziert das Bild als Codesymbol und gibt den mit diesem Link verknüpften Anwendungsfall an.

  3. Auf der linken Seite des Vollbild-APIs Explorer wird Folgendes angezeigt:

    1. Unter der Überschrift Request parameters (Anfrageparameter) finden Sie eine Liste der Parameter, die von der Methode unterstützt werden. Die Parameterwerte part und id sollten festgelegt werden. Der Parameterwert id, UC_x5XG1OV2P6uZZ5FSM9Ttw, ist die ID für den YouTube-Kanal GoogleDevelopers.

    2. Unter den Parametern befindet sich der Abschnitt Anmeldedaten. Im Drop-down-Menü in diesem Bereich sollte der Wert API-Schlüssel angezeigt werden. Im APIs Explorer werden standardmäßig Demozugangsdaten verwendet, um den Einstieg zu erleichtern. Sie verwenden jedoch Ihren eigenen API-Schlüssel, um das Beispiel lokal auszuführen.

      Bild, das die Anmeldedaten im Vollbild-APIs Explorer und das Drop-down-Menü mit der ausgewählten Option „API-Schlüssel“ zeigt.

  4. Auf der rechten Seite des Vollbild-APIs Explorer werden Tabs mit Codebeispielen in verschiedenen Sprachen angezeigt. Wählen Sie den Tab Java aus.

  5. Kopieren Sie das Codebeispiel und speichern Sie es in einer Datei mit dem Namen src/main/java/ApiExample.java. In allen Beispielen wird derselbe Klassenname (ApiExample) verwendet, sodass Sie die Datei build.gradle nicht ändern müssen, um verschiedene Beispiele auszuführen.

  6. Suchen Sie in dem 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.

  7. Führen Sie das Beispiel über die Befehlszeile aus. Führen Sie in Ihrem Arbeitsverzeichnis folgenden Befehl aus:

    gradle -q run

  8. Das Beispiel sollte die Anfrage ausführen und die Antwort in STDOUT ausgeben.

Schritt 4: Autorisierte Anfrage ausführen

In diesem Schritt ändern Sie das Codebeispiel so, dass anstelle von Informationen zum YouTube-Kanal „GoogleDevelopers“ Informationen zu Ihrem YouTube-Kanal abgerufen werden. Für diese Anfrage ist eine Nutzerautorisierung erforderlich.

  1. Kehren Sie zur Dokumentation für die Methode channels.list der API zurück.

  2. 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.

  3. Auf der linken Seite des Vollbild-APIs Explorer sehen Sie wieder eine Liste von Parametern, gefolgt vom Abschnitt Anmeldedaten. Es gibt jedoch zwei Änderungen im Vergleich zum Beispiel, in dem Sie Informationen zum GoogleDevelopers-Kanal abgerufen haben:

    1. Im Parameterabschnitt sollte der Parameterwert id nicht festgelegt werden, sondern der Parameterwert mine auf true gesetzt werden. Dadurch wird der API-Server angewiesen, Informationen zum Kanal des aktuell authentifizierten Nutzers abzurufen.

    2. Im Bereich Anmeldedaten sollte im Drop-down-Menü die Option für Google OAuth 2.0 ausgewählt sein.

      Wenn Sie auf den Link Bereiche anzeigen klicken, sollte außerdem der Bereich https://www.googleapis.com/auth/youtube.readonly ausgewählt sein.

      Bild mit Bereichen im Vollbildmodus des APIs Explorer und der ausgewählten Option zum Verwenden von „Google OAuth 2.0“-Anmeldedaten.

  4. Wählen Sie wie im vorherigen Beispiel den Tab Java aus, kopieren Sie das Codebeispiel und speichern Sie es unter src/main/java/ApiExample.java.

  5. Führen Sie das Beispiel über die Befehlszeile aus. Führen Sie in Ihrem Arbeitsverzeichnis folgenden Befehl aus:

    gradle -q run

  6. Das Beispiel sollte versuchen, in Ihrem Standardbrowser ein neues Fenster oder einen neuen Tab zu öffnen. Wenn das nicht funktioniert, kopieren Sie die URL aus dem Terminal und öffnen Sie sie manuell in Ihrem Browser.

    Sollten Sie noch nicht in Ihrem Google-Konto angemeldet sein, werden Sie aufgefordert, sich anzumelden. Wenn Sie in mehreren Google-Konten angemeldet sind, werden Sie aufgefordert, ein Konto für die Autorisierung auszuwählen.

  7. Klicken Sie auf die Schaltfläche, um Ihrer Anwendung Zugriff auf die in Ihrem Codebeispiel angegebenen Bereiche zu gewähren.

  8. Die Probe wird automatisch fortgesetzt und Sie können den Browser-Tab schließen, der für den Autorisierungsablauf verwendet wurde.

    Die API-Antwort sollte wieder in STDOUT ausgegeben werden.

Weitere Informationen