API-Anfragen

Nachdem Sie das Projekt eingerichtet haben, um die Abhängigkeiten zu deklarieren, Google APIs-Clientbibliothek für Java verwenden möchten, führen Sie die folgenden Schritte aus, um eine Anfrage zu stellen. Die Snippets auf dieser Seite verwenden Version 3 der Cloud Resource Manager API.

Schritt 1: Authentifizierung

Instanziieren com.google.auth.oauth2.GoogleCredentials Instanz. Google Cloud-Nutzer können Folgendes verwenden: GoogleCredentials.getApplicationDefault() um die Standardanmeldedaten für Anwendungen.

GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();

Weitere Informationen zur Authentifizierung finden Sie unter Google Auth Library Java

Schritt 2: Dienstklasse instanziieren

Ein Google-Dienst hat mindestens eine Version. Eine Dienstklasse stellt eine Version dar. eines Dienstes und ist eine untergeordnete Klasse von AbstractGoogleJsonClient: Beispiel: com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.

Die Builder-Klasse der Dienstklasse benötigt drei Parameter:

Rufen Sie auch die Methode setApplicationName() des Builders mit Ihrer Anwendung auf. Namen. Dadurch wird der User-Agent-Header auf den Anwendungsnamen gesetzt. Dies ist hilfreich, zur Fehlerbehebung mit Protokollen.

Der Code sieht so aus:

HttpTransport transport = GoogleNetHttpTransport.newTrustedTransport();
JsonFactory jsonFactory = GsonFactory.getDefaultInstance();
CloudResourceManager.Builder resourceManagerBuilder =
    new CloudResourceManager.Builder(
        transport, jsonFactory, new HttpCredentialsAdapter(credentials))
        .setApplicationName("Example Java App");
CloudResourceManager cloudResourceManager = resourceManagerBuilder.build();

Schritt 3: Ressourcenobjekt erstellen

Eine Ressourcenklasse stellt einen Typ der Ressource dar. die von einem Dienst verwaltet werden. Die Klasse ist als innere Klasse der Dienstklasse definiert. Du kannst auf sie zugreifen mithilfe der Methoden in der Dienstklasse.

Sie können beispielsweise die Spalte „Projekte“ abrufen CloudResourceManager-Ressource Klasse:

import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.Projects;

...

Projects projects = cloudResourceManager.projects();

Schritt 4: Anfrageobjekt erstellen

Die Vorgänge für das Ressourcenobjekt werden als Anfrageklassen dargestellt. Die verfügbaren Vorgänge hängen von der Ressourcenklasse ab. Beispiel: Eine Ressource Klasse, die "create", "get" und "delete" enthält Methoden enthalten „Erstellen“, „Abrufen“ und „Löschen“ -Anforderungsklassen.

Für das Beispiel von Cloud Resource Manager können Sie das Anfrageobjekt für den Abruf folgendermaßen erstellen: durch Aufrufen der Methode projects.get:

Get get = projects.get("projects/your-project-id");

Schritt 5: Anfrage ausführen

Ein Anfrageobjekt hat die Methode execute(), mit der die Anfrage ausgeführt wird. Dieser Anruf eine HTTP-Anfrage an den Google-Dienst ausführt und die JSON-Datei deserialisiert. auf eine Modellklasse. Die execute()-Methode des Get-Objekts Das Anfrageobjekt gibt ein Projektobjekt zurück:

Project project = get.execute();
System.out.println("Project name: " + project.getDisplayName());

Zusammenfassung

Mit diesen Schritten können Sie Anfragen über die Google APIs-Client-Bibliothek für Java Hier ist das Code-Snippet, das alle Schritte unter Verwendung der Ressource Manager-Dienst.

package com.example;

import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.gson.GsonFactory;
import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager;
import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.Projects;
import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.Projects.Get;
import com.google.api.services.cloudresourcemanager.v3.model.Project;
import com.google.auth.http.HttpCredentialsAdapter;
import com.google.auth.oauth2.GoogleCredentials;

public class ResourceManagerSample {
  public static void main(String[] arguments) throws Exception {
    GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();

    HttpTransport transport = GoogleNetHttpTransport.newTrustedTransport();
    JsonFactory jsonFactory = GsonFactory.getDefaultInstance();
    CloudResourceManager.Builder resourceManagerBuilder =
        new CloudResourceManager.Builder(
            transport, jsonFactory, new HttpCredentialsAdapter(credentials))
            .setApplicationName("Example Java App");
    CloudResourceManager cloudResourceManager = resourceManagerBuilder.build();

    Projects projects = cloudResourceManager.projects();

    Get get = projects.get("projects/your-project-id");

    Project project = get.execute();
    System.out.println("Project display name: " + project.getDisplayName());
  }
}