Cuando configures tu proyecto para declarar las dependencias de tu Google APIs Client Library para Java, sigue estos pasos para realizar una solicitud. Los fragmentos de esta página usan la v3 de la API de Cloud Resource Manager.
Paso 1: Autenticación
Crear una instancia
com.google.auth.oauth2.GoogleCredentials
instancia. Para los usuarios de Google Cloud, puedes usar
GoogleCredentials.getApplicationDefault()
para obtener la
Credenciales predeterminadas de la aplicación.
GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
Para obtener más información sobre la autenticación, consulta Biblioteca de autenticación de Google para Java.
Paso 2: Crea una instancia de la clase de servicio
Un servicio de Google tiene una o más versiones. Una clase de servicio representa una versión
de un servicio y es una clase secundaria de
AbstractGoogleJsonClient.
Por ejemplo com.google.api.services.cloudresourcemanager.v3.CloudResourceManager
.
La clase de compilador de la clase de servicio toma 3 parámetros:
com.google.api.client.http.HttpTransport
GoogleNetHttpTransport.newTrustedTransport()
crea una instancia de él.com.google.api.client.json.JsonFactory
GsonFactory.getDefaultInstance()
crea una instancia de él.com.google.api.client.http.HttpRequestInitializer
new HttpCredentialsAdapter(credentials)
da una instancia de ella.
También llama al método setApplicationName()
del compilador con tu aplicación.
de la fuente de datos. Establece el encabezado de UserAgent con el nombre de la aplicación y es útil.
para solucionar problemas con los registros.
El código es similar al siguiente:
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();
Paso 3: Crea un objeto de recurso
Una clase de recurso representa un tipo del recurso administrada por un servicio. La clase se define como una clase interna de la clase de servicio. Puedes acceder a ellas con los métodos de la clase de servicio.
Por ejemplo, puedes obtener el campo “Proyectos” recurso de CloudResourceManager clase:
import com.google.api.services.cloudresourcemanager.v3.CloudResourceManager.Projects;
...
Projects projects = cloudResourceManager.projects();
Paso 4: Haz un objeto de solicitud
Las operaciones contra el objeto de recurso se representan como clases de solicitud. Las operaciones disponibles dependen de la clase de recurso. Por ejemplo, un recurso que proporciona "create", "get" y "delete" métodos contienen "Crear", "Obtener" y "Borrar" solicitudes de permiso respectivamente.
En el ejemplo de Cloud Resource Manager, puedes hacer que el objeto Get request
Llama al método projects.get
:
Get get = projects.get("projects/your-project-id");
Paso 5: Ejecuta la solicitud
Un objeto de solicitud tiene el método execute()
que ejecuta la solicitud. Esta llamada
ejecuta una solicitud HTTP al servicio de Google y deserializa el JSON
respuesta a una clase modelo. Por ejemplo, el método execute()
de la operación Get
request devuelve un objeto Project:
Project project = get.execute();
System.out.println("Project name: " + project.getDisplayName());
Resumen
Con estos pasos, puedes realizar solicitudes usando la biblioteca cliente de las APIs de Google para Java Este es el fragmento de código que combina todos los pasos que usan el recurso Resource. Administrador.
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());
}
}