Configura extremos de bibliotecas cliente

Se accede a cada Google Cloud servicio de la API a través de un extremo específico del servicio.

Por ejemplo, las bibliotecas cliente de Java-Speech y Java-Translate tienen extremos predeterminados de https://speech.googleapis.com:443 y https://translate.googleapis.com:443, respectivamente.

Las bibliotecas cliente de Cloud para Java determinan automáticamente el extremo de servicio correcto durante la inicialización del cliente. Si no se configura ningún extremo personalizado, las bibliotecas usan el extremo predeterminado del servicio.

Anatomía de un extremo

Si usamos el extremo de Java-Speech como ejemplo, en la siguiente tabla, se detallan las secciones que componen el extremo:

Scheme Nombre del servicio Dominio del universo Puerto
https:// speech googleapis.com 443

Estos son los valores predeterminados de todos los extremos de las bibliotecas cliente de Cloud para Java, además del nombre del servicio. El nombre del servicio no tiene un valor predeterminado porque cada Google Cloud servicio tiene un valor diferente.

Cuándo configurar un extremo personalizado

Existen ciertos casos de uso para reemplazar el extremo predeterminado, como los siguientes:

  • El servicio ofrece extremos regionales. El extremo predeterminado no considera las variantes regionales.
  • No estás trabajando en producción. Por ejemplo, estás probando de forma local con un emulador sin configurar TLS.

Solo modifica la configuración del extremo si es necesario. Cuando usas un extremo personalizado, debes incluir el número de puerto (por ejemplo, example.com:443). Las bibliotecas cliente no agregan automáticamente un puerto predeterminado como 443 a los extremos personalizados, a diferencia de lo que hacen con los extremos de servicio predeterminados.

Configura un extremo personalizado

Puedes configurar el extremo desde el ClientSettings específico del servicio en las bibliotecas cliente de Cloud para Java.

En el siguiente ejemplo, se usa Java-KMS:

  1. Configura el extremo en el ClientSettings.Builder y crea el ClientSettings:

    // Replace with your desired endpoint
    String endpoint = "customEndpoint.com:443";
    KeyManagementServiceSettings keyManagementServiceSettings =
     KeyManagementServiceSettings.newBuilder()
        .setEndpoint(endpoint)
        .build();
    
  2. Inicia el cliente con ClientSettings:

    try (KeyManagementServiceClient keyManagementServiceClient =
      KeyManagementServiceClient.create(keyManagementServiceSettings)) {
      ...
    }
    

    El extremo se resuelve en customEndpoint.com:443.

    El cliente usa el extremo de la primera de las siguientes fuentes que proporciona uno:

    1. El extremo configurado de manera programática a través de ClientSettings.Builder.setEndpoint().
    2. El extremo predeterminado del servicio, como https://{serviceName}.googleapis.com:443.

En el siguiente fragmento, se muestra cómo determinar el extremo resuelto del cliente:

// The client's settings class contains a getter for the endpoint
keyManagementServiceClient.getSettings().getEndpoint();