サービスへの要求の送信

適用対象: 開発者 | プレミアム

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 パラメーターを形成するために使用されます。 ポリシー式を使用できます。 いいえ 該当なし

使用法

使用上の注意

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>

ポリシーに対する処理の詳細については、次のトピックを参照してください。