Configura extremos de bibliotecas cliente

Se accede a cada servicio de la API de Google Cloud 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 se usa el extremo de Java-Speech como ejemplo, en la siguiente tabla, se detallan las secciones que componen el extremo:

Esquema 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, excepto el nombre del servicio. El nombre del servicio no tiene un valor predeterminado porque cada servicio Google Cloud 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 realizando pruebas de forma local con un emulador sin configurar TLS.

Solo modifica la configuración del extremo si es necesario. Cuando uses 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 objeto 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 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 como customEndpoint.com:443.

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

    1. Es el extremo que se configura de forma programática a través de ClientSettings.Builder.setEndpoint().
    2. Es 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();