Todos os produtos
Search
Central de documentação

Alibaba Cloud SDK:Configuração de requisições HTTPS

Última atualização: Jun 28, 2026

O SDK V2.0 acessa os serviços da Alibaba Cloud via HTTPS por padrão. Para alternar entre protocolos, defina o parâmetro protocol da classe com.aliyun.teaopenapi.models.Config como HTTP ou HTTPS. Recomendamos HTTPS para transmissão segura de dados.

com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
config.setProtocol("HTTPS");

Por padrão, o SDK verifica os certificados SSL/TLS nas conexões HTTPS. Se o ambiente não tiver os certificados necessários, a verificação pode falhar. Use o parâmetro ignoreSSL da classe com.aliyun.teautil.models.RuntimeOptions para ignorar a verificação de certificados. Por exemplo, em ambientes de homologação, defina ignoreSSL como true para contornar a verificação durante os testes.

Importante

Ative a validação de certificados SSL/TLS em ambientes de produção.

com.aliyun.teautil.models.RuntimeOptions runtimeOptions = new com.aliyun.teautil.models.RuntimeOptions();
// true: skip certificate validation, false: validate certificates (default is false)
runtimeOptions.ignoreSSL = true;

Problemas comuns em conexões HTTPS

Cliente Java reporta erro Connection reset

Aplicações Java que chamam APIs via HTTPS podem encontrar os erros Connection reset ou javax.net.ssl.SSLException, mesmo quando a mesma URL funciona corretamente no navegador. Esse problema geralmente ocorre quando a versão padrão de TLS do runtime Java não corresponde à exigida pelo servidor.

Causa raiz

  • O JDK 7 e versões anteriores usam TLS 1.0 por padrão. O JDK 8 usa TLS 1.2 por padrão.

  • O servidor de destino desabilitou TLS 1.0 e TLS 1.1 e oferece suporte apenas a TLS 1.2 ou superior.

  • Navegadores negociam automaticamente a versão mais alta de TLS suportada, ao passo que clientes Java adotam o padrão do JDK, o que pode gerar incompatibilidades.

Solução

Após criar um objeto Config, defina explicitamente a versão TLS como 1.2 por meio de um argumento JVM ou de código.

  • Opção 1: Defina um argumento de inicialização da JVM

    Adicione o seguinte parâmetro ao comando de inicialização:

    java -Dhttps.protocols=TLSv1.2 -jar your-app.jar
  • Opção 2: Especifique a versão TLS no código

    // Set the system property at the program entry point
    System.setProperty("https.protocols", "TLSv1.2");

Após aplicar a alteração, reinicie a aplicação e verifique se as chamadas HTTPS funcionam corretamente. Se os erros persistirem, confirme se as versões TLS e os cipher suites suportados pelo servidor de destino são compatíveis com o ambiente Java utilizado.