全部產品
Search
文件中心

Alibaba Cloud SDK:HTTPS請求配置

更新時間:Oct 16, 2025

本文將為您介紹在Java(非同步)SDK中HTTPS請求相關配置。

在使用 Java(非同步)SDK 開發時,預設採用 HTTPS 協議訪問阿里雲服務。您可以通過 protocol 參數靈活選擇所需的通訊協定,支援的值包括HTTPHTTPS。為保障資料轉送安全,建議始終優先使用HTTPS協議。

配置方式如下:

AsyncClient client = AsyncClient.builder()
        .credentialsProvider(credentialProvider) // 此處省略credentialProvider實現過程。
        .overrideConfiguration(
                ClientOverrideConfiguration.create()
                        .setEndpointOverride("<ENDPOINT>") // 雲產品服務存取點。
                        .setProtocol("https") // 佈建要求協議,預設https。
        )
        .build();

在使用HTTPS協議調用OpenAPI時,可以配置以下SSL/TLS相關參數以增強通訊的安全性或適應特殊網路環境:

配置參數

說明

x509TrustManagers

配置自訂的CA認證信任管理器(X509TrustManager[]類型)。若不配置,則系統將預設僅使用系統信任庫中的CA認證來校正服務端認證。適用於需要信任特定私人CA情境,例如內部系統或測試環境。

keyManagers

配置用戶端密鑰管理器(KeyManager[]類型)。通常用於雙向TLS認證(即用戶端認證認證)情境,即用戶端也需要向服務端提供認證進行身份認證。

ignoreSSL

是否跳過SSL/TLS認證驗證。其預設值為false,表示需要校正認證;如果設定為true,則會跳過認證驗證步驟。

重要

為保障生產環境通訊安全,建議該參數保持預設值。若為了在測試環境中快速調試或測試介面,可臨時跳過認證校正。

hostnameVerifier

自訂HTTPS主機名稱驗證規則。若不配置,系統會採用Java的預設驗證邏輯,即驗證伺服器的主機名稱是否與認證中的網域名稱匹配。使用者可以根據實際需求實現自訂邏輯,以滿足特定情境下的驗證需求,例如在某些內部網路環境中,可能需要對主機名稱或特定IP地址進行特殊處理。

您可以根據實際業務情境選擇性地配置上述參數,以增強通訊的安全性或適應特殊網路環境。

重要

需要注意的是,任何對SSL/TLS驗證的修改都可能影響通訊的安全性,因此在生產環境中應謹慎使用。

範例程式碼如下:

HttpClient httpClient = new ApacheAsyncHttpClientBuilder()
        // 使用HTTPS協議時,可配置SSL/TLS相關參數
        .x509TrustManagers(null) // 配置自訂的CA認證信任管理器,非必傳。
        .keyManagers(null) // 配置用戶端密鑰管理器,非必傳。
        .ignoreSSL(false) // 是否跳過認證檢查,預設false,非必傳。
        .hostnameVerifier(null) // 自訂HTTPS主機名稱驗證規則,需自主實現javax.net.ssl.HostnameVerifier,非必傳。
        .build();
        
AsyncClient client = AsyncClient.builder()
        .credentialsProvider(credentialProvider) // 此處省略credentialProvider實現過程。
        .httpClient(httpClient)
        .overrideConfiguration(
                ClientOverrideConfiguration.create()
                        .setEndpointOverride("<ENDPOINT>") // 雲產品服務存取點。
                        .setProtocol("https")
        )
        .build();