Cette page s'applique à Apigee et à Apigee hybrid.
Consultez la documentation d'Apigee Edge.
Vous pouvez créer et modifier des règles localement à l'aide de l'IDE ou l'éditeur de texte ou de fichiers XML de votre choix. Cet article utilise le type de règle de quota comme exemple pour créer, configurer, associer, déployer et tester des règles.
La plupart des proxys d'API appliquent un quota. Les quotas permettent de contrôler la fréquence à laquelle une application cliente est autorisée à appeler une API au cours d'un intervalle de temps donné. Dans l'exemple ci-dessous, une règle de quota est configurée pour limiter les applications à une requête par minute (bien que cela ne soit pas toujours réaliste, cela offre un moyen simple de visualiser les effets d'une règle).
Dans une configuration de proxy d'API, les fichiers de règle sont stockés sous forme de fichiers XML dans le répertoire /apiproxy/policies
.
Par exemple, une règle de type quota appelée "QuotaPolicy" peut être créée sous la forme d'un fichier nommé QuotaPolicy.xml
avec le contenu suivant :
<Quota enabled="true" continueOnError="false" name="QuotaPolicy"> <Allow count="1"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> </Quota>
Vous pouvez créer manuellement un fichier texte ou générer la règle à partir d'un schéma XML. Toutes les règles ont certains paramètres propres au type de règle, et d'autres qui sont génériques pour toutes les règles.
Toutes les règles définissent les attributs suivants :
enabled
: indique si la règle est activée ou désactivée. Vous pouvez activer ou désactiver les règles lors de l'exécution en modifiant ce paramètre. Une règle dont l'attributenabled
est défini surfalse
n'est pas appliquée.continueOnError
: indique si le pipeline doit continuer à traiter le message en cas d'échec de la règle. Lors de l'application des règles de quota, des erreurs indiquent probablement que le quota a été dépassé. Par conséquent, cet attribut doit être défini sur "false".name
: le nom que vous donnez à cette règle. Ce nom est unique à cette instance de règle et permet d'associer la règle au flux en tant qu'étape de traitement.
Dans l'exemple ci-dessus, les éléments Allow
, Interval
et TimeUnit
sont spécifiques à la règle de quota. Ces éléments fournissent des paramètres que les services d'API appliquent au nom d'une API. Les autres types de règles définissent leurs propres paramètres. Vous pouvez obtenir plus d'informations dans la documentation de référence sur les règles.