このトピックでは、Alibaba Cloud Darabonba SDK でエンドポイントを設定する方法について説明します。
エンドポイントは、Alibaba Cloud サービス API のドメイン名です。たとえば、Elastic Compute Service(ECS)のエンドポイントは ecs.cn-hangzhou.aliyuncs.com です。Alibaba Cloud の各サービスには固有のエンドポイントがあります。サービスのエンドポイントは、リージョンによって異なる場合があります。
API リクエストの送信先エンドポイントの設定
Darabonba SDK では、API リクエストの送信先エンドポイントを 2 つのモードで指定できます。次のリストは、優先順位の高い順にモードを示しています。
ユーザー定義エンドポイント: このモードでは、SDK クライアントを初期化するときに正確なエンドポイントを指定できます。エンドポイントは、
ユーザー定義エンドポイント:このモードでは、SDK クライアントを初期化するときに正確なエンドポイントを指定できます。OpenAPI エクスプローラー にアクセスして、エンドポイントを照会できます。OpenAPI エクスプローラーでエンドポイントを照会する方法の詳細については、このトピックの「エンドポイントの照会」セクションをご参照ください。
use Darabonba\OpenApi\Models\Config;
$config = new Config([]);
// 認証情報の設定は省略します。
$config->endpoint = "<endpoint>";2. 連結エンドポイント:このモードでは、Darabonba SDK がエンドポイントを生成するためのリージョン ID を指定できます。このモードは、Alibaba Cloud サービスの SDK にエンドポイントデータファイルがある場合にのみ有効です。それ以外の場合、SDK クライアントの初期化時に例外がスローされ、config.endpoint can not be empty というエラーメッセージが返されます。この場合、正確なエンドポイントを指定する必要があります。エンドポイントデータファイルの例の詳細については、ECS エンドポイントデータファイル をご参照ください。アクセスするリージョンがデータファイルに含まれていない場合、リージョンのエンドポイントは ${Alibaba Cloud サービスのコード}.${リージョン ID}.aliyuncs.com 形式で生成されます。
use Darabonba\OpenApi\Models\Config;
$config = new Config([]);
// 認証情報の設定は省略します。
$config->regionId = "<region-id>";3. ファイルアップロード用のエンドポイントの設定
Darabonba SDK では、ファイルアップロード用のエンドポイントを 2 つ設定できます。
- 認証に使用されるオープンプラットフォームのエンドポイント。仮想プライベートクラウド(VPC)エンドポイントを設定して、VPC 経由で認証情報をリクエストできます。認証情報はファイルのアップロードに使用されます。
use Darabonba\OpenApi\Models\Config;
use GuzzleHttp\Psr7\Stream;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
use AlibabaCloud\SDK\Facebody\V20191230\Facebody;
use AlibabaCloud\SDK\Facebody\V20191230\Facebody\Models\DetectBodyCountAdvanceRequest;
$config = new Config([]);
// 認証情報の設定は省略します。
$config->regionId = "<region-id>";
$config->openPlatformEndpoint = "openplatform-vpc.cn-shanghai.aliyuncs.com";
$request = new DetectBodyCountAdvanceRequest();
$request->imageURLObject = new Stream(fopen("filepath"));
$runtime = new RuntimeOptions();
$client = new Facebody($config);
try {
$response = $client->detectBodyCountAdvance($request, $runtime);
var_dump($response);
} catch (TeaUnableRetryError $e) {
var_dump($e->getMessage());
var_dump($e->getErrorInfo());
var_dump($e->getLastException());
var_dump($e->getLastRequest());
}- ファイルのアップロードに使用するエンドポイント。内部ネットワークまたは VPC 経由でファイルをアップロードするために、内部エンドポイントを設定できます。
エンドポイントの照会
OpenAPI エクスプローラー でエンドポイントを照会できます。
OpenAPI エクスプローラーのホームページで Alibaba Cloud サービスを選択します。たとえば、ECS を選択できます。

2. [リージョン] タブをクリックします。

3. 指定するリージョンを見つけて、リージョンのエンドポイントをコピーします。
次の方法を使用してエンドポイントを照会することもできます:
OpenAPI エクスプローラーの [API デバッグ] タブで、呼び出す API オペレーションを見つけて、RegionId パラメーターを設定します。OpenAPI エクスプローラーは、エンドポイントを取得できる SDK サンプルコードを自動的に生成します。
