Cada serviço da API Google Cloud é acessado por um endpoint específico do serviço.
Por exemplo, as bibliotecas de cliente Java-Speech e Java-Translate têm endpoints padrão https://speech.googleapis.com:443 e https://translate.googleapis.com:443, respectivamente.
As bibliotecas de cliente do Cloud para Java determinam automaticamente o endpoint de serviço correto durante a inicialização do cliente. Se nenhum endpoint personalizado for configurado, as bibliotecas usarão o endpoint padrão do serviço.
Anatomia de um endpoint
Usando o endpoint Java-Speech como exemplo, a tabela a seguir detalha as seções que compõem o endpoint:
| Esquema | Nome do serviço | Domínio do universo | Porta |
|---|---|---|---|
| https:// | speech | googleapis.com | 443 |
Esses são os valores padrão de todos os endpoints das bibliotecas de cliente do Cloud para Java, exceto o nome do serviço. O nome do serviço não tem um valor padrão porque cada Google Cloud serviço tem um valor diferente.
Quando configurar um endpoint personalizado
Há alguns casos de uso para substituir o endpoint padrão, como:
- O serviço oferece endpoints regionais. O endpoint padrão não considera variantes regionais.
- Você não está trabalhando em produção. Por exemplo, você está testando localmente com um emulador sem configurar o TLS.
Modifique a configuração do endpoint apenas se necessário. Ao usar um endpoint personalizado, inclua o número da porta (por exemplo, example.com:443). As bibliotecas de cliente não adicionam automaticamente uma porta padrão, como 443, a endpoints personalizados, ao contrário do que fazem com endpoints de serviço padrão.
Configurar um endpoint personalizado
É possível definir o endpoint no ClientSettings específico do serviço nas
bibliotecas de cliente do Cloud para Java.
O exemplo a seguir usa Java-KMS:
Defina o endpoint no
ClientSettings.Buildere crie oClientSettings:// Replace with your desired endpoint String endpoint = "customEndpoint.com:443"; KeyManagementServiceSettings keyManagementServiceSettings = KeyManagementServiceSettings.newBuilder() .setEndpoint(endpoint) .build();Inicie o cliente com
ClientSettings:try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create(keyManagementServiceSettings)) { ... }O endpoint se refere a
customEndpoint.com:443.O cliente usa o endpoint da primeira das seguintes fontes que fornecer um:
- O endpoint definido de maneira programática via
ClientSettings.Builder.setEndpoint(). - O endpoint padrão do serviço, como
https://{serviceName}.googleapis.com:443.
- O endpoint definido de maneira programática via
O snippet a seguir mostra como determinar o endpoint resolvido do cliente:
// The client's settings class contains a getter for the endpoint
keyManagementServiceClient.getSettings().getEndpoint();