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:
Configura el extremo en
ClientSettings.Buildery crea elClientSettings:// Replace with your desired endpoint String endpoint = "customEndpoint.com:443"; KeyManagementServiceSettings keyManagementServiceSettings = KeyManagementServiceSettings.newBuilder() .setEndpoint(endpoint) .build();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:
- Es el extremo que se configura de forma programática a través de
ClientSettings.Builder.setEndpoint(). - Es el extremo predeterminado del servicio, como
https://{serviceName}.googleapis.com:443.
- Es el extremo que se configura de forma programática a través de
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();