Correspondance de valeur numérique d'attribut - Amazon Simple Notification Service

Correspondance de valeur numérique d'attribut

Vous pouvez utiliser des valeurs numériques afin de mettre en correspondance les attributs de message et de filtrer les messages. Les valeurs numériques ne sont pas placées entre guillemets doubles dans la politique JSON. Vous pouvez utiliser les opérations numériques suivantes pour mettre en correspondance les attributs de message.

Note

Les préfixes sont pris en charge pour la correspondance de la chaîne de l’attribut uniquement.

Correspondance exacte

Lorsqu'une valeur d'attribut de politique inclut le mot-clé numeric et l'opérateur =, elle est mise en correspondance avec tout attribut de message qui a le même nom et la même valeur numérique.

Examinons l'exemple d'attribut de politique suivant :

"price_usd": [{"numeric": ["=",301.5]}]

Il met en correspondance l'un ou l'autre des attributs de message suivants :

"price_usd": {"Type": "Number", "Value": 301.5}
"price_usd": {"Type": "Number", "Value": 3.015e2}

Correspondance de type « anything-but » (tout-sauf)

Lorsqu'une valeur d'attribut de politique inclut le mot-clé anything-but, elle est mise en correspondance avec tout attribut de message qui n'inclut pas l'une des valeurs d'attribut de la politique.

Examinons l'exemple d'attribut de politique suivant :

"price": [{"anything-but": [100, 500]}]

Il met en correspondance l'un ou l'autre des attributs de message suivants :

"price": {"Type": "Number", "Value": 101}
"price": {"Type": "Number", "Value": 100.1}

Il met également en correspondance l'attribut de message suivant (parce qu'il contient une valeur qui n'est pas 100 ou 500) :

"price": {"Type": "Number.Array", "Value": "[100, 50]"}

Cependant, il ne met pas en correspondance l'attribut de message suivant :

"price": {"Type": "Number", "Value": 100}

Correspondance de plage de valeurs

En plus de l'opérateur =, un attribut de politique numérique peut inclure les opérateurs suivants : <, <=, > et >=.

Examinons l'exemple d'attribut de politique suivant :

"price_usd": [{"numeric": ["<", 0]}]

Il correspond à n'importe quel attribut de message avec des valeurs numériques négatives.

Prenons l'exemple d'un autre attribut de message :

"price_usd": [{"numeric": [">", 0, "<=", 150]}]

Il correspond à n'importe quel attribut de message avec des nombres positifs allant jusqu'à 150 inclus.