サービスへの要求の送信
適用対象: 開発者 | プレミアム
set-backend-service
ポリシーでは、現在の要求のターゲット URL を http://localhost:3500/v1.0/invoke/{app-id}[.{ns-name}]/method/{method-name}
に設定します。この際、テンプレート パラメーターはポリシー ステートメントで指定された値に置き換えられます。
このポリシーでは、Dapr がゲートウェイと同じポッドのサイドカー コンテナーで実行されることを前提としています。 Dapr ランタイムは、要求を受け取ったときに、サービス検出と実際の呼び出しを実行します。これには、HTTP と gRPC の間のプロトコル変換、再試行、分散トレース、エラー処理が含まれます。 API Management との Dapr 統合の詳細をご確認ください。
Note
ポリシーの要素と子要素を、ポリシー ステートメントで指定された順序で設定します。 API Management ポリシーを設定または編集する方法について説明します。
ポリシー ステートメント
<set-backend-service backend-id="dapr" dapr-app-id="app-id" dapr-method="method-name" dapr-namespace="ns-name" />
属性
属性 | 説明 | 必要 | Default |
---|---|---|---|
backend-id | "dapr" に設定する必要があります。 | はい | 該当なし |
dapr-app-id | ターゲット マイクロサービスの名前。 Dapr の appId パラメーターを形成するために使用されます。 ポリシー式を使用できます。 | はい | 該当なし |
dapr-method | ターゲット マイクロサービスで呼び出すメソッドまたは URL の名前。 Dapr の method-name パラメーターにマップされます。 ポリシー式を使用できます。 | はい | 該当なし |
dapr-namespace | ターゲット マイクロサービスが存在する名前空間の名前。 Dapr の appId パラメーターを形成するために使用されます。 ポリシー式を使用できます。 | いいえ | 該当なし |
使用法
- ポリシー セクション: inbound
- ポリシー スコープ: グローバル、製品、API、操作
- ゲートウェイ: セルフホステッド
使用上の注意
Dapr のサポートは、セルフホステッド ゲートウェイで有効にする必要があります。
例
次の例は、"echo" という名前のマイクロサービスで "back" という名前のメソッドを呼び出す方法を示しています。 set-backend-service
ポリシーは、送信先 URL を http://localhost:3500/v1.0/invoke/echo.echo-app/method/back
に設定します。 forward-request
ポリシーによって、要求が Dapr ランタイムにディスパッチされ、そこからマイクロサービスに配信されます。
ここでは、わかりやすくするために forward-request
ポリシーを示しています。 通常、このポリシーは base
キーワードによってグローバル スコープから "継承" されます。
<policies>
<inbound>
<base />
<set-backend-service backend-id="dapr" dapr-app-id="echo" dapr-method="back" dapr-namespace="echo-app" />
</inbound>
<backend>
<forward-request />
</backend>
<outbound>
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
関連ポリシー
関連するコンテンツ
ポリシーに対する処理の詳細については、次のトピックを参照してください。
- チュートリアル:API を変換および保護する
- ポリシー ステートメントとその設定の一覧に関するポリシー リファレンス
- ポリシー式
- ポリシーの設定または編集
- ポリシー構成を再利用する
- ポリシー スニペットのリポジトリ
- Azure で Microsoft Copilot を使用してポリシーを作成する