Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Was
Wird verwendet, um die verbleibende Anzahl der Anfragen, die gemäß der Zielkontingent-Richtlinie zulässig sind, dynamisch zu ändern. In der Regel verwenden Sie diese Richtlinie, um die aktuelle Kontingentanzahl der Zielkontingent-Richtlinie zu reduzieren, anstatt auf das Zurücksetzen der Kontingentzahl zu warten.
Beispiel: Die Zielkontingent-Richtlinie beschränkt einen Entwickler auf 1.000 Anfragen pro Woche. Zum zweiten Wochentag hat der Entwickler dieses Limit bereits erreicht. Verwenden Sie die Richtlinie "Kontingent zurücksetzen", um 500 von ihrem Kontingentzähler abzuziehen und so weitere 500 Anfragen für den Rest der Woche zu genehmigen. Am Ende der Woche wird die Kontingentrichtlinie zurückgesetzt und der Entwickler erhält wieder 1.000 Anfragen pro Woche.
Diese Richtlinie ist eine erweiterbare Richtlinie, deren Verwendung je nach Apigee-Lizenz Auswirkungen auf die Kosten oder die Nutzung haben kann. Informationen zu Richtlinientypen und Auswirkungen auf die Nutzung finden Sie unter Richtlinientypen.
Weitere Informationen zur Kontingentrichtlinie finden sich unter Kontingentrichtlinie. Weitere Informationen zur Verwendung der Richtlinie zum Zurücksetzen von Kontingenten finden Sie in diesem Communitybeitrag.
Beispiele
Diese Codebeispiele zeigen, wie Kontingentzähler zurückgesetzt werden:
Standardzähler zurücksetzen
<ResetQuota name="resetQuota"> <Quota name="MyQuotaPolicy"> <Identifier name="_default"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Die Richtlinie zum Zurücksetzen von Kontingenten legt die Richtlinie für das Zielkontingent fest. Dazu verwenden Sie das Attribut Name des Tags <Quota>. Im obigen Beispiel ist die Richtlinie „MyQuotaPolicy“ das Ziel.
Für alle Richtlinien zum Zurücksetzen von Kontingenten muss das Tag <Identifier> den Zähler in der zu aktualisierenden Kontingentrichtlinie angeben. Standardmäßig enthält eine Kontingentrichtlinie einen einzelnen Zähler, sofern die Kontingentrichtlinie nicht auch das Tag <Identifier> enthält. In diesem Beispiel verwendet die Zielkontingentrichtlinie das <ID>-Tag nicht. Sie können also dasName-Attribut als_Standardeinstellung festlegen.
Das Element <Allow> gibt den Wert an, mit dem die aktuelle Anzahl der Kontingente für die Zielrichtlinie verringert wird. In diesem Beispiel wird die Kontingentanzahl um 100 reduziert, um 100 weitere Anfragen an die Richtlinie für das Zielkontingent zu ermöglichen. Wenn die Zielkontingentrichtlinie zurückgesetzt wird, wird diese Änderung verworfen.
Im Folgenden finden Sie die Definition der Richtlinie für das Zielkontingent:
<Quota name="MyQuotaPolicy"> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Referenz verwenden
<ResetQuota name="resetQuota"> <Quota ref="request.header.quotapolicy"> <Identifier name="_default"> <Allow ref="request.header.allowquota" /> </Identifier> </Quota> </ResetQuota>
In diesem Beispiel übergeben Sie den Namen der Richtlinie für das Zielkontingent und die Änderung der Kontingentanzahl als Header in der Anfrage. Anschließend können Sie in der Richtlinie „Kontingent zurücksetzen“ auf die Ablaufvariablen verweisen, die diese Werte enthalten.
ID angeben
<ResetQuota name="resetQuota"> <Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Ist in der Zielkontingent-Richtlinie das Tag <Identifier> angegeben, so können Sie denselben Wert für das Tag <Identifier> der Richtlinie zum Zurücksetzen von Kontingenten festlegen, um eine bestimmte Kontingentzahl zu aktualisieren. Beachten Sie, dass das <Identifier>-Tag in der unten angegebenen Zielkontingent-Richtlinie mit dem Wert übereinstimmt, der in der Richtlinie zum Zurücksetzen der Kontingente angegeben wurde:
<Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"/> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Elementverweis
Der Elementverweis beschreibt die Elemente und Attribute der Richtlinie zum Zurücksetzen von Kontingenten.
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1"> <DisplayName>Reset Quota 1</DisplayName> <Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Class ref="request.header.classIdentifier" /> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
<ResetQuota>-Attribute
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
In der folgenden Tabelle werden Attribute beschrieben, die für alle übergeordneten Richtlinienelemente gelten:
Attribut | Beschreibung | Standard | Presence |
---|---|---|---|
name |
Der interne Name der Richtlinie. Der Wert des Attributs Optional können Sie das Element |
– | Erforderlich |
continueOnError |
Legen Sie Legen Sie |
false | Optional |
enabled |
Setzen Sie den Wert auf Legen Sie |
true | Optional |
async |
Dieses Attribut wurde verworfen. |
false | Verworfen |
<DisplayName>-Element
Wird zusätzlich zum Attribut name
verwendet, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen Namen in einer natürlichen Sprache zu versehen.
<DisplayName>Policy Display Name</DisplayName>
Standard |
– Wenn Sie dieses Element weglassen, wird der Wert des Namensattributs |
---|---|
Presence | Optional |
Typ | String |
<Quota>-Element
Gibt die Zielkontingent-Richtlinie an, deren Zähler aktualisiert werden soll.
<Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Standard: | – |
Präsenz: | Erforderlich |
Typ: | – |
Attribute
Attribut | Beschreibung | Standard | Presence |
---|---|---|---|
Name |
Gibt den Namen der Zielkontingent-Richtlinie an. |
– | Optional |
Ref | Eine Ablaufvariable, die den Namen der Zielkontingent-Richtlinie enthält. Wenn sowohl ref als auch Name angegeben sind, hat ref Priorität. Wenn ref zur Laufzeit nicht aufgelöst wird, wird Name verwendet. | – | Optional |
<Quota>/<Identifier>-Element
Variable zur eindeutigen Identifizierung des Zählers, wenn in der Zielkontingent-Richtlinie das Tag <Identifier> angegeben ist.
<Quota name="quotaName"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Standard: | – |
Präsenz: | Erforderlich |
Typ: | String |
Attribute
Attribut | Beschreibung | Standard | Presence |
---|---|---|---|
Name |
Gibt den Namen der Zähl-ID in der Zielkontingentrichtlinie an. Geben Sie für eine Kontingentrichtlinie ohne das Tag <Identifier> _Standardeinstellung an. |
– | Optional |
Ref |
Eine Ablaufvariable, die den Namen der Zählerkennung in der Zielkontingent-Richtlinie enthält. Wenn sowohl ref als auch Name angegeben sind, hat ref Priorität. Wenn ref zur Laufzeit nicht aufgelöst wird, wird Name verwendet. |
– | Optional |
<Quota>/<Identifier>/<Allow>-Element
Gibt den Betrag zur Verringerung des Kontingentzählers an. Sie müssen <Allow> angeben. Andernfalls ändert die Richtlinie das Kontingent nicht.
<Identifier name="identifierName" ref="request.header.identifier"> <Allow ref="request.header.allowquota">100</Allow> </Identifier>
Standard: | – |
Präsenz: | Erforderlich |
Typ: | Ganzzahl |
Attribute
Attribut | Beschreibung | Standard | Presence |
---|---|---|---|
Ref |
Eine Ablaufvariable, die die Änderung der Kontingentzahl in der Zielkontingent-Richtlinie enthält. |
– | Optional |
<Quota>/<Identifier>/<Class>-Element
Gibt die Klasse an, für die der Kontingentzähler aktualisiert wird. Weitere Informationen zur Verwendung einer Klasse mit der Kontingentrichtlinie finden Sie unter Kontingentrichtlinie.
<Identifier name="_default"> <Class ref="request.header.classIdentifier"> <Allow>200</Allow> </Class> </Identifier>
Standard: | – |
Präsenz: | Optional |
Typ: | – |
Attribute
Attribut | Beschreibung | Standard | Presence |
---|---|---|---|
Ref |
Verweis auf die Ablaufvariable, die die zu aktualisierende Kontingentklasse enthält. |
– | Optional |
Fehlerreferenz
In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.
Laufzeitfehler
Diese Fehler können bei Ausführung der Richtlinie auftreten.
Fehlercode | HTTP-Status | Ursache | Beheben |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 |
Die im Element <Quota> der Richtlinie ResetQuota angegebene Richtlinie Quota ist nicht im API-Proxy definiert und daher während des Ablaufs nicht verfügbar. Das Element <Quota> ist obligatorisch und identifiziert die Zielrichtlinie Quota , deren Zähler anhand der Richtlinie ResetQuota aktualisiert werden soll. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
– | Der Verweis auf die Variable mit der zulässigen Anzahl im Element <Allow> der Richtlinie kann nicht in einen Wert aufgelöst werden. Dieses Element ist obligatorisch und gibt den Betrag zur Verringerung des Kontingentzählers an. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 |
Die Variable, auf die im Attribut ref im Element <Quota> verwiesen wird, kann nicht aufgelöst werden. |
build |
Bereitstellungsfehler
Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.
Fehlername | Ursache | Beheben |
---|---|---|
InvalidCount |
Wenn der im Element <Allow> der ResetQuota -Richtlinie angegebene Zählwert keine Ganzzahl ist, schlägt die Bereitstellung des API-Proxys fehl.
|
build |