Skicka en enkelriktad begäran
GÄLLER FÖR: Alla API Management-nivåer
Principen send-one-way-request
skickar den angivna begäran till den angivna URL:en utan att vänta på ett svar.
Kommentar
Ange principens element och underordnade element i den ordning som anges i principbeskrivningen. Läs mer om hur du anger eller redigerar API Management-principer.
Principuttryck
<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>
Attribut
Attribut | beskrivning | Obligatoriskt | Standardvärde |
---|---|---|---|
läge | Avgör om det här är en new begäran eller en copy av rubrikerna och brödtexten i den aktuella begäran. I avsnittet mode=copy utgående princip initierar inte begärandetexten. Principuttryck tillåts. |
Nej | new |
timeout | Tidsgränsintervallet i sekunder innan anropet till URL:en misslyckas. Principuttryck tillåts. | Nej | 60 |
Element
Element | Description | Obligatoriskt |
---|---|---|
set-url | URL:en för begäran. Principuttryck tillåts. | Nej om mode=copy ; annars ja. |
set-method | Anger metoden för begäran. Principuttryck tillåts inte. | Nej om mode=copy ; annars ja. |
set-header | Anger ett huvud i begäran. Använd flera set-header element för flera begärandehuvuden. |
Nej |
set-body | Anger brödtexten för begäran. | Nej |
authentication-certificate | Certifikat som ska användas för klientautentisering, som anges i ett thumbprint attribut. |
Nej |
proxyserver | Routningsbegäran via HTTP-proxy. | Nej |
Användning
- Principavsnitt: inkommande, utgående, serverdel, on-error
- Principomfattningar: global, arbetsyta, produkt, API, åtgärd
- Gatewayer: klassisk, v2, förbrukning, lokalt installerad
Exempel
I det send-one-way-request
här exemplet används principen för att skicka ett meddelande till ett Slack-chattrum om HTTP-svarskoden är större än eller lika med 500. Mer information om det här exemplet finns i Använda externa tjänster från Azure API Management-tjänsten.
<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>
Relaterade principer
Relaterat innehåll
Mer information om hur du arbetar med principer finns i:
- Självstudie: Transformera och skydda ditt API
- Principreferens för en fullständig lista över principinstruktioner och deras inställningar
- Principuttryck
- Ange eller redigera principer
- Återanvända principkonfigurationer
- Lagringsplats för principfragment
- Skapa principer med Microsoft Copilot i Azure