このトピックでは、V1.0 SDK でプロキシを設定する方法について説明します。
プロキシのタイプ
HTTP プロキシと HTTPS プロキシを使用できます。 HTTP プロキシは HTTP リクエストに使用され、HTTPS プロキシは HTTPS リクエスト に使用されます。 プロキシを設定した後、プロキシアクセスを必要としない特定の Alibaba Cloud プロダクトに対してプロキシをバイパスするように SDK を設定することもできます。
設定方法
SDK には、プロキシを設定するための 2 つのメソッドが用意されています。
環境変数の使用:
HTTP_PROXYまたはhttp_proxy: HTTP プロキシサーバーのアドレスを指定します。HTTPS_PROXY: HTTPS プロキシサーバーのアドレスを指定します。NO_PROXY: プロキシをバイパスするアドレスのリストを指定します。 複数のアドレスはコンマで区切ります。 ドメイン名と IP アドレスがサポートされています。
コードでの設定: プロキシを設定するには、
com.aliyuncs.http.HttpClientConfigクラスを使用します。 このクラスは、次のメソッドを提供します。setHttpProxy(): HTTP プロキシサーバーのアドレスを指定します。
setHttpsProxy(): HTTPS プロキシサーバーのアドレスを指定します。
setNoProxy(): プロキシをバイパスするアドレスのリストを指定します。 複数のアドレスはコンマで区切ります。 ドメイン名と IP アドレスがサポートされています。
public static void main(String[] args) { com.aliyuncs.http.HttpClientConfig clientConfig = com.aliyuncs.http.HttpClientConfig.getDefault(); // HTTPS プロキシを設定します。 ProtocolType も設定する必要があります。 clientConfig.setHttpsProxy("http://user:password@127.0.0.1:8989"); clientConfig.setProtocolType(com.aliyuncs.http.ProtocolType.HTTPS); // HTTP プロキシを設定します。 clientConfig.setHttpProxy("http://127.0.0.1:9898"); // プロキシをバイパスするアドレスのリストを設定します。 clientConfig.setNoProxy("ecs-cn-hangzhou.aliyuncs.com,dysmsapi.aliyuncs.com"); com.aliyuncs.profile.DefaultProfile profile = com.aliyuncs.profile.DefaultProfile.getProfile( "<REGION_ID>", // 環境変数から RAM ユーザーの AccessKey ID を取得します。 System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), // 環境変数から RAM ユーザーの AccessKey Secret を取得します。 System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET") ); profile.setHttpClientConfig(clientConfig); com.aliyuncs.IAcsClient client = new com.aliyuncs.DefaultAcsClient(profile); // API を呼び出すコードは省略されています。 }
関連ドキュメント
詳細については、「HTTP プロキシ設定のベストプラクティス」をご参照ください。