Todos os produtos
Search
Central de documentação

Alibaba Cloud SDK:Tratamento de exceções

Última atualização: Jun 28, 2026

Conheça os tipos de exceção do SDK V2.0 e como tratá-los.

Tipos de exceção

O SDK V2.0 classifica as exceções nos seguintes tipos:

  • TeaUnretryableException: ocorre quando problemas de rede persistem após o esgotamento de todas as tentativas de nova execução. Chame exception.getLastRequest para inspecionar a solicitação com falha.

  • TeaException: indica um erro de negócio. Use estes parâmetros para solucionar o problema:

    • code: código de erro de negócio da OpenAPI.

    • message: mensagem de erro, que inclui o RequestId.

    • data: informações detalhadas sobre o erro retornadas pelo servidor.

Importante

Este exemplo apenas imprime a saída para fins de demonstração. Em produção, trate as exceções adequadamente: propague-as, registre-as em log ou tente uma recuperação para garantir a estabilidade do sistema.

import com.aliyun.ecs20140526.models.DescribeRegionsRequest;
import com.aliyun.tea.TeaException;
import com.aliyun.tea.TeaUnretryableException;
import com.aliyun.tea.ValidateException;
import com.aliyun.teaopenapi.models.Config;
import com.aliyun.teautil.models.RuntimeOptions;

public class Sample {
    public static void main(String[] args) throws Exception {
        Config config = new com.aliyun.teaopenapi.models.Config();
        // Get the AccessKey ID of the RAM user from an environment variable.
        config.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"));
        // Get the AccessKey secret of the RAM user from an environment variable.
        config.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        // The region ID.
        config.setRegionId("<regionId>");
        com.aliyun.ecs20140526.Client client = new com.aliyun.ecs20140526.Client(config);

        DescribeRegionsRequest describeRegionsRequest = new DescribeRegionsRequest();
        try {
            client.describeRegions(describeRegionsRequest);
        } catch(TeaUnretryableException ue) {
            // This is for demonstration only. Handle exceptions with caution and do not ignore them in your project.
            ue.printStackTrace();
            // Print the error message.
            System.out.println(ue.getMessage());
            // Print the request record.
            System.out.println(ue.getLastRequest());
        } catch (TeaException e) {
            // This is for demonstration only. Handle exceptions with caution and do not ignore them in your project.
            e.printStackTrace();
            // Print the error code.
            System.out.println(e.getCode());
            // Print the error message, which includes the RequestId.
            System.out.println(e.getMessage());
            // Print the specific content returned by the server.
            System.out.println(e.getData());
        }
    }
}

Tratamento de exceções

Para solucionar exceções em chamadas de API:

  • Copie o RequestId da exceção e use o OpenAPI Diagnostics para identificar a causa. OpenAPI Diagnostics.

  • Consulte o código de erro na documentação do produto correspondente.

  • Verifique o FAQ para obter uma solução.

  • Entre em contato com o suporte técnico.