set-header
GILT FÜR: Alle API Management-Ebenen
Die Richtlinie set-header
weist einem vorhandenen HTTP-Antwort- und/oder -Anforderungsheader einen Wert zu oder fügt einen neuen Antwort- und/oder Anforderungsheader hinzu.
Verwenden Sie die Richtlinie, um eine Liste von HTTP-Headern in eine HTTP-Nachricht einzufügen. In eingehenden Pipelines setzt diese Richtlinie die HTTP-Header für die Anforderung, die an den Zieldienst übergeben wird. In ausgehenden Pipelines legt diese Richtlinie die HTTP-Header für die Antwort fest, die an den Client des Gateways gesendet wird.
Hinweis
Legen Sie die Elemente und untergeordneten Elemente einer Richtlinie in der Reihenfolge fest, die in der Richtlinienanweisung angegeben ist. Das Portal unterstützt Sie bei der Konfiguration dieser Richtlinie durch einen formularbasierten, angeleiteten Editor. Erfahren Sie mehr darüber, wie Sie API Management-Richtlinien festlegen oder bearbeiten.
Richtlinienanweisung
<set-header name="header name" exists-action="override | skip | append | delete">
<value>value</value> <!--for multiple headers with the same name add additional value elements-->
</set-header>
Attributes
Name | BESCHREIBUNG | Erforderlich | Standard |
---|---|---|---|
exists-action | Gibt die auszuführende Aktion an, wenn bereits ein Header angegeben wurde. Dieses Attribut muss einen der folgenden Werte aufweisen. - override : Ersetzt den Wert des vorhandenen Headers.- skip : Der vorhandene Headerwert wird nicht ersetzt.- append : Fügt den Wert an den vorhandenen Headerwert an.- delete : Entfernt den Header aus der Anforderung.Bei einer Festlegung auf override führt die Auflistung mehrerer Einträge mit demselben Namen dazu, dass der Header gemäß aller Einträge festgelegt wird (die mehrfach aufgeführt sind); nur die aufgelisteten Werte werden im Ergebnis festgelegt. Richtlinienausdrücke sind zulässig. |
Nein | override |
name | Der Name des zu setzenden Headers. Richtlinienausdrücke sind zulässig. | Ja | – |
Elemente
Name | BESCHREIBUNG | Erforderlich |
---|---|---|
value | Der Wert für den zu setzenden Header. Richtlinienausdrücke sind zulässig. Fügen Sie bei mehreren Headern mit dem gleichen Namen weitere value -Elemente hinzu. |
Nein |
Verwendung
- Richtlinienabschnitte: inbound, outbound, backend, on-error
- Richtlinienbereiche: global, Arbeitsbereich, Produkt, API, Vorgang
- Gateways: klassisch, v2, Verbrauch, selbstgehostet, Arbeitsbereich
Hinweise zur Verwendung
Mehrere Werte eines Headers sind zu einer CSV-Zeichenfolge verkettet, beispielsweise:
headerName: value1,value2,value3
Zu den Ausnahmen zählen standardisierte Header, deren Werte:
- Kann Kommas enthalten (
User-Agent
,WWW-Authenticate
,Proxy-Authenticate
) - Datumswerte (
Cookie
,Set-Cookie
,Warning
), - oder ein Datum enthalten können (
Date
,Expires
,If-Modified-Since
,If-Unmodified-Since
,Last-Modified
,Retry-After
).
Bei diesen Ausnahmen werden mehrere Headerwerte nicht zu einer Zeichenfolge verkettet, sondern stattdessen als einzelne Header übergeben, beispielsweise:
User-Agent: value1
User-Agent: value2
User-Agent: value3
Es gelten die folgenden Einschränkungen:
- Das Entfernen von
Server
-Headern wird nicht unterstützt. - Header:
Connection
,ContentLength
,KeepAlive
,TransferEncoding
können nicht geändert oder gelöscht werden.
Beispiele
Header hinzufügen, vorhandene überschreiben
<set-header name="some header name" exists-action="override">
<value>20</value>
</set-header>
Header entfernen
<set-header name="some header name" exists-action="delete" />
Weiterleiten von Kontextinformationen an den Back-End-Dienst
In diesem Beispiel wird gezeigt, wie die Richtlinie auf API-Ebene angewendet wird, um dem Back-End-Dienst Kontextinformationen bereitzustellen.
<!-- Copy this snippet into the inbound element to forward some context information, user id and the region the gateway is hosted in, to the backend service for logging or evaluation -->
<set-header name="x-request-context-data" exists-action="override">
<value>@(context.User.Id)</value>
<value>@(context.Deployment.Region)</value>
</set-header>
Weitere Informationen finden Sie unter Richtlinienausdrücke und Kontextvariable.
Verwandte Richtlinien
Zugehöriger Inhalt
Weitere Informationen zum Arbeiten mit Richtlinien finden Sie hier:
- Tutorial: Transformieren und Schützen Ihrer API
- Unter Richtlinien für die API-Verwaltung finden Sie eine komplette Liste der Richtlinienanweisungen und der zugehörigen Einstellungen.
- Richtlinienausdrücke
- Festlegen oder Bearbeiten von Richtlinien
- Wiederverwenden von Richtlinienkonfigurationen
- Repository für Richtliniencodeausschnitte
- Azure API Management-Richtlinientoolkit
- Erstellen von Richtlinien mit Microsoft Copilot in Azure