ソフトウェア開発において、プロキシは機能やリソースへのアクセスを制御するミドルウェアとして機能します。プロキシを使用すると、元のコードを変更することなく、権限チェック、操作ログ、データキャッシング、遅延読み込みなどの機能を実装できます。これにより、プログラムのセキュリティとパフォーマンスが向上し、保守と拡張が容易になります。この Topic では、V2.0 ソフトウェア開発キット (SDK) のプロキシを設定する方法について説明します。
プロキシの種類
HTTP プロキシと HTTPS プロキシがサポートされています。
プロキシの種類 | 説明 |
HTTP プロキシ | httpProxy パラメーターを使用して、プロキシサーバーのアドレスとポートを設定します。フォーマットは |
HTTPS プロキシ | httpsProxy パラメーターを使用して、プロキシサーバーのアドレスとポートを設定します。フォーマットは |
プロキシサーバーで身分認証が必要な場合は、アドレスにユーザー名とパスワードを追加します。次のフォーマットを使用します: http://<user>:<password>@<IP アドレス>:<ポート>
プロキシを設定した後、noProxy パラメーターを使用して、プロキシを必要としないアドレスのリストを指定することもできます。複数のアドレスはカンマで区切ります。ドメイン名と IP アドレスを使用できます。
設定方法
RuntimeOptions のプロキシ設定は、クライアント Config の設定をオーバーライドします。
次のコードは、RuntimeOptions オブジェクトを使用してプロキシを設定する方法の例を示しています。
const { RuntimeOptions } = require('@alicloud/tea-util'); const runtime = new RuntimeOptions({ // HTTP プロキシを設定します。 httpProxy: "http://xx.xx.xx.xx:8089", // HTTPS プロキシを設定します。 httpsProxy: "https://xxx.xxx.xxx.xxx:9999", // プロキシを必要としないアドレスを設定します。 noProxy: '127.0.0.1,localhost', });import * as $Util from '@alicloud/tea-util'; // RuntimeOptions インスタンスを作成し、実行時パラメーターを設定します。 const runtime = new $Util.RuntimeOptions({ // HTTP プロキシを設定します。 httpProxy: "http://xx.xx.xx.xx:8089", // HTTPS プロキシを設定します。 httpsProxy: "https://xxx.xxx.xxx.xxx:9999", // プロキシを必要としないアドレスを設定します。 noProxy: '127.0.0.1,localhost' });Config を使用して、クライアントのグローバルプロキシを設定できます。設定が完了すると、このプロキシ設定はクライアントによって開始されたすべてのリクエストに適用されます。
const { Config } = require('@alicloud/openapi-client'); const config = new Config({ // HTTP プロキシを設定します。 httpProxy: "http://xx.xx.xx.xx:8089", // HTTPS プロキシを設定します。 httpsProxy: "https://xxx.xxx.xxx.xxx:9999", // プロキシを必要としないアドレスを設定します。 noProxy: '127.0.0.1,localhost', });import * as $OpenApi from '@alicloud/openapi-client'; const config = new $OpenApi.Config({ // HTTP プロキシを設定します。 httpProxy: "http://xx.xx.xx.xx:8089", // HTTPS プロキシを設定します。 httpsProxy: "https://xxx.xxx.xxx.xxx:9999", // プロキシを必要としないアドレスを設定します。 noProxy: '127.0.0.1,localhost' });
関連ドキュメント
プロキシ設定の詳細については、「HTTP プロキシ設定の実践」をご参照ください。