1 方向の要求を送信する
適用対象: すべての API Management レベル
send-one-way-request
ポリシーは、指定された URL に指定された要求を送信します。応答は待機しません。
Note
ポリシーの要素と子要素を、ポリシー ステートメントで指定された順序で設定します。 API Management ポリシーを設定または編集する方法について説明します。
ポリシー ステートメント
<send-one-way-request mode="new | copy" timeout="time in seconds">
<set-url>request URL</set-url>
<set-method>...</set-method>
<set-header>...</set-header>
<set-body>...</set-body>
<authentication-certificate thumbprint="thumbprint" />
</send-one-way-request>
属性
属性 | 説明 | 必要 | Default |
---|---|---|---|
mode | これが new の要求であるか、現在の要求のヘッダーと本文の copy であるかを判定します。 送信ポリシー セクションでは、mode=copy は要求本文を初期化しません。 ポリシー式を使用できます。 |
No | new |
timeout | URL の呼び出しが失敗するまでのタイムアウト間隔 (秒単位)。 ポリシー式を使用できます。 | いいえ | 60 |
要素
要素 | 説明 | 必須 |
---|---|---|
set-url | 要求の URL。 ポリシー式を使用できます。 | いいえ (mode=copy の場合)。はい (それ以外の場合)。 |
set-method | 要求のメソッドを設定します。 ポリシー式は使用できません。 | いいえ (mode=copy の場合)。はい (それ以外の場合)。 |
set-header | 要求のヘッダーを設定します。 複数の要求ヘッダーには複数の set-header 要素を使用します。 |
No |
set-body | 要求の本文を設定します。 | No |
authentication-certificate | クライアントの認証に使用する証明書。thumbprint 属性で指定されます。 |
いいえ |
proxy | HTTP プロキシ経由で要求をルーティングします。 | いいえ |
使用法
- ポリシー セクション: inbound、outbound、backend、on-error
- ポリシー スコープ: グローバル、ワークスペース、製品、API、操作
- ゲートウェイ: クラシック、v2、従量課金、セルフホステッド
例
この例では、send-one-way-request
ポリシーを使用して、HTTP 応答コードが 500 以上の場合に Slack チャット ルームにメッセージを送信します。 このサンプルの詳細については、「Azure API Management サービスからの外部サービスの使用」を参照してください。
<choose>
<when condition="@(context.Response.StatusCode >= 500)">
<send-one-way-request mode="new" timeout="20">
<set-url>https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX</set-url>
<set-method>POST</set-method>
<set-body>@{
return new JObject(
new JProperty("username","APIM Alert"),
new JProperty("icon_emoji", ":ghost:"),
new JProperty("text", String.Format("{0} {1}\nHost: {2}\n{3} {4}\n User: {5}",
context.Request.Method,
context.Request.Url.Path + context.Request.Url.QueryString,
context.Request.Url.Host,
context.Response.StatusCode,
context.Response.StatusReason,
context.User.Email
))
).ToString();
}</set-body>
</send-one-way-request>
</when>
</choose>
関連ポリシー
関連するコンテンツ
ポリシーに対する処理の詳細については、次のトピックを参照してください。
- チュートリアル:API を変換および保護する
- ポリシー ステートメントとその設定の一覧に関するポリシー リファレンス
- ポリシー式
- ポリシーの設定または編集
- ポリシー構成を再利用する
- ポリシー スニペットのリポジトリ
- Azure で Microsoft Copilot を使用してポリシーを作成する