Po skonfigurowaniu w projekcie zadeklarowania zależności dla Biblioteka klienta interfejsów API Google do języka Java. Aby przesłać żądanie, wykonaj te czynności. Fragmenty kodu na tej stronie korzystają z interfejsu Cloud Resource Manager API w wersji 3.
Krok 1. Uwierzytelnianie
Utwórz instancję
com.google.auth.oauth2.GoogleCredentials
instancji. W przypadku użytkowników Google Cloud możesz użyć
GoogleCredentials.getApplicationDefault()
aby uzyskać
Domyślne dane logowania aplikacji.
GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
Więcej informacji na temat uwierzytelniania znajdziesz tutaj: Biblioteka Google Auth Library w języku Java.
Krok 2. Utwórz instancję klasy usługi
Usługa Google ma co najmniej 1 wersję. Klasa usługi reprezentuje wersję
usługi i jest klasą podrzędną
AbstractGoogleJsonClient.
Przykład:
com.google.api.services.cloudresourcemanager.v3.CloudResourceManager
Klasa konstruktora klasy usługi ma 3 parametry:
com.google.api.client.http.HttpTransport
GoogleNetHttpTransport.newTrustedTransport()
może utworzyć jego instancję.com.google.api.client.json.JsonFactory
GsonFactory.getDefaultInstance()
może utworzyć jego instancję.com.google.api.client.http.HttpRequestInitializer
new HttpCredentialsAdapter(credentials)
jego wystąpienie.
Wywołuj również w swojej aplikacji metodę setApplicationName()
konstruktora
imię i nazwisko. Powoduje to ustawienie nagłówka UserAgent z nazwą aplikacji i jest przydatny
.
Kod wygląda tak:
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();
Krok 3. Utwórz obiekt zasobu
Klasa zasobu reprezentuje typ zasobu. zarządzane przez usługę. Klasa jest zdefiniowana jako wewnętrzna klasa klasy usługi. Możesz uzyskać do nich dostęp za pomocą metod z klasy usługi.
Na przykład możesz znaleźć wymiar „Projekty”, zasób CloudResourceManagera zajęcia:
import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.Projects;
...
Projects projects = cloudResourceManager.projects();
Krok 4. Utwórz obiekt żądania
Operacje na obiekcie zasobu są reprezentowane jako klasy żądań. Dostępne operacje zależą od klasy zasobu. Na przykład zasób klasa zawierająca „create”, „get” i „delete” metody zawierają „Utwórz”, „Pobierz” i „Usuń” klas żądań.
W przypadku Cloud Resource Manager obiekt możesz utworzyć poprzez
wywołuje metodę projects.get
:
Get get = projects.get("projects/your-project-id");
Krok 5. Wykonaj żądanie
Obiekt żądania zawiera metodę execute()
, która uruchamia żądanie. Ta rozmowa
wykonuje żądanie HTTP do usługi Google i przeprowadza deserializację pliku JSON
dla klasy modelu. Na przykład metoda execute()
klasy Get
obiekt żądania zwraca obiekt projektu:
Project project = get.execute();
System.out.println("Project name: " + project.getDisplayName());
Podsumowanie
Wykonując poniższe czynności, możesz wysyłać żądania za pomocą biblioteki klienta interfejsów API Google do Java. Oto fragment kodu, który łączy wszystkie kroki za pomocą komponentu Usługa menedżera.
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());
}
}