All Products
Search
Document Center

Alibaba Cloud SDK:Penanganan pengecualian

Last Updated:Jun 05, 2026

Pelajari jenis pengecualian di SDK V2.0 dan cara menanganinya.

Jenis pengecualian

SDK V2.0 mengklasifikasikan pengecualian ke dalam jenis-jenis berikut:

  • TeaUnretryableException: Dilemparkan ketika masalah jaringan tetap terjadi setelah semua upaya pengulangan habis. Panggil exception.getLastRequest untuk memeriksa permintaan yang gagal.

  • TeaException: Menunjukkan kesalahan bisnis. Gunakan parameter berikut untuk pemecahan masalah:

    • code: Kode kesalahan bisnis OpenAPI.

    • message: Pesan kesalahan, yang mencakup RequestId.

    • data: Informasi kesalahan detail yang dikembalikan oleh server.

Penting

Contoh ini hanya mencetak output untuk tujuan demonstrasi. Di lingkungan produksi, tangani pengecualian dengan benar—sebarkan, catat (log), atau lakukan pemulihan untuk memastikan stabilitas sistem.

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();
        // Dapatkan ID AccessKey dari RAM user dari variabel lingkungan.
        config.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"));
        // Dapatkan Rahasia AccessKey dari RAM user dari variabel lingkungan.
        config.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        // ID wilayah.
        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) {
            // Ini hanya untuk demonstrasi. Tangani pengecualian dengan hati-hati dan jangan abaikan di proyek Anda.
            ue.printStackTrace();
            // Cetak pesan kesalahan.
            System.out.println(ue.getMessage());
            // Cetak catatan permintaan.
            System.out.println(ue.getLastRequest());
        } catch (TeaException e) {
            // Ini hanya untuk demonstrasi. Tangani pengecualian dengan hati-hati dan jangan abaikan di proyek Anda.
            e.printStackTrace();
            // Cetak kode kesalahan.
            System.out.println(e.getCode());
            // Cetak pesan kesalahan, yang mencakup RequestId.
            System.out.println(e.getMessage());
            // Cetak konten spesifik yang dikembalikan oleh server.
            System.out.println(e.getData());
        }
    }
}

Menangani pengecualian

Untuk memecahkan masalah pengecualian panggilan API:

  • Salin RequestId dari pengecualian dan gunakan OpenAPI Diagnostics untuk mengidentifikasi penyebabnya. OpenAPI Diagnostics.

  • Cari kode kesalahan di dokumentasi produk terkait.

  • Periksa FAQ untuk solusi.

  • Hubungi dukungan teknis.