このトピックでは、Java 用 Alibaba Cloud SDK V2.0 でプロキシを設定する方法について説明します。
設定方法
説明
プロキシ設定は、RuntimeOptions オブジェクトを使用した設定、SDK クライアントの初期化時の設定の順に有効になります。
次のコードは、RuntimeOptions オブジェクトを使用してプロキシを設定する例を示しています。
import com.aliyun.ecs20140526.Client; import com.aliyun.ecs20140526.models.DescribeRegionsRequest; 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 Config(); // Obtain the AccessKey ID of the Resource Access Management (RAM) user from an environment variable. // RAM ユーザーの AccessKey ID を環境変数から取得します。 config.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")); // Obtain the AccessKey secret of the RAM user from an environment variable. // RAM ユーザーの AccessKey シークレットを環境変数から取得します。 config.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")); // Specify the region ID. // リージョン ID を指定します。 config.setRegionId("<regionId>"); Client client = new Client(config); // Create a RuntimeOptions instance and specify runtime parameters. The settings take effect only on the requests that use the RuntimeOptions instance. // RuntimeOptions インスタンスを作成し、ランタイムパラメータを指定します。設定は、RuntimeOptions インスタンスを使用するリクエストに対してのみ有効になります。 RuntimeOptions runtimeOptions = new RuntimeOptions(); runtimeOptions.httpProxy = "http://127.0.0.1:9898"; runtimeOptions.httpsProxy = "http://user:password@127.0.0.1:8989"; runtimeOptions.noProxy = "127.0.0.1,localhost"; DescribeRegionsRequest describeRegionsRequest = new DescribeRegionsRequest(); client.describeRegionsWithOptions(describeRegionsRequest, runtimeOptions); } }次のコードは、SDK クライアントの初期化時に Config オブジェクトを使用してプロキシを設定する例を示しています。
import com.aliyun.ecs20140526.Client; import com.aliyun.ecs20140526.models.DescribeRegionsRequest; 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 Config(); // Obtain the AccessKey ID of the RAM user from an environment variable. // RAM ユーザーの AccessKey ID を環境変数から取得します。 config.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")); // Obtain the AccessKey secret of the RAM user from an environment variable. // RAM ユーザーの AccessKey シークレットを環境変数から取得します。 config.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")); // Specify the region ID. // リージョン ID を指定します。 config.setRegionId("<regionId>"); // Configure a proxy when you initialize the client. // クライアントの初期化時にプロキシを設定します。 config.setHttpProxy("http://127.0.0.1:9898"); config.setHttpsProxy("http://user:password@127.0.0.1:8989"); config.setNoProxy("127.0.0.1,localhost"); Client client = new Client(config); RuntimeOptions runtimeOptions = new RuntimeOptions(); DescribeRegionsRequest describeRegionsRequest = new DescribeRegionsRequest(); client.describeRegionsWithOptions(describeRegionsRequest, runtimeOptions); } }