ADC
Merci pour vos commentaires

Ce article a été traduit automatiquement. (Clause de non responsabilité)

A propos de l’évaluation de la charge utile HTTP et TCP

La charge utile d’une requête ou d’une réponse HTTP se compose d’informations de protocole HTTP telles que les en-têtes, une URL, le contenu du corps et des informations de version et d’état. Lorsque vous configurez une expression de stratégie avancée pour évaluer la charge utile HTTP, vous utilisez un préfixe d’expression de stratégie avancée et, si nécessaire, un opérateur.

Par exemple, vous utilisez l’expression suivante, qui inclut le http.req.header("<header_name>") préfixe et l’opérateur exists, si vous souhaitez déterminer si une connexion HTTP inclut un en-tête personnalisé nommé « MyHeader » :

http.req.header("myHeader").exists

Vous pouvez également combiner plusieurs expressions de stratégie avancées avec des opérateurs booléens et arithmétiques. Par exemple, l’expression composée suivante peut être utile avec diverses fonctionnalités de NetScaler, telles que la mise en cache intégrée, la réécriture et le répondeur. Cette expression utilise d’abord l’opérateur booléen && pour déterminer si une connexion HTTP inclut l’en-tête Content-Type avec la valeur « text/html ». « Si cette opération renvoie la valeur FALSE, l’expression détermine si la connexion HTTP inclut un en-tête « Transfer-Encoding » ou « Content-Length ».

(http.req.header("Content-Type").exists && http.req.header("Content-Type").eq("text/html")) || (http.req.header("Transfer-Encoding").exists) || (http.req.header("Content-Length").exists)

La charge utile d’un paquet TCP ou UDP est la partie de données du paquet. Vous pouvez configurer des expressions de stratégie avancées pour examiner les fonctionnalités d’un paquet TCP ou UDP, notamment les suivantes :

  • Domaines source et destination
  • Ports source et destination
  • Le texte de la charge utile
  • Types d’enregistrements

Les préfixes d’expression suivants extraient du texte du corps de la charge utile :

  • HTTP.REQ.BODY(integer). Renvoie le corps d’une requête HTTP sous la forme d’un objet texte multiligne, jusqu’à la position du caractère indiquée dans l’argument entier. Si le corps contient moins de caractères que ce qui est spécifié dans l’argument, le corps entier est renvoyé.
  • HTTP.RES.BODY(integer). Renvoie une partie du corps de la réponse HTTP. La longueur du texte renvoyé est égale au nombre de l’argument entier. Si le corps contient moins de caractères que ce qui est spécifié en entier, le corps entier est renvoyé.
  • CLIENT.TCP.PAYLOAD(integer). Retourne les données de charge utile TCP sous forme de chaîne, en commençant par le premier caractère de la charge utile et en continuant pour le nombre de caractères de l’argument entier.

Voici un exemple qui donne la valeur TRUE si un corps de réponse de 1024 octets contient la chaîne « https », et que cette chaîne apparaît après la chaîne « chaîne de début » et avant la chaîne « chaîne de fin » :

http.res.body(1024).after_str("start_string").before_str("end_string").contains("https")

Remarque : Vous pouvez appliquer n’importe quelle opération de texte au corps de la charge utile. Pour plus d’informations sur les opérations que vous pouvez appliquer au texte, voir Expressions de stratégie avancées : évaluation du texte.

La version officielle de ce document est en anglais. Certains contenus de la documentation Cloud Software Group ont été traduits de façon automatique à des fins pratiques uniquement. Cloud Software Group n'exerce aucun contrôle sur le contenu traduit de façon automatique, qui peut contenir des erreurs, des imprécisions ou un langage inapproprié. Aucune garantie, explicite ou implicite, n'est fournie quant à l'exactitude, la fiabilité, la pertinence ou la justesse de toute traduction effectuée depuis l'anglais d'origine vers une autre langue, ou quant à la conformité de votre produit ou service Cloud Software Group à tout contenu traduit de façon automatique, et toute garantie fournie en vertu du contrat de licence de l'utilisateur final ou des conditions d'utilisation des services applicables, ou de tout autre accord avec Cloud Software Group, quant à la conformité du produit ou service à toute documentation ne s'applique pas dans la mesure où cette documentation a été traduite de façon automatique. Cloud Software Group ne pourra être tenu responsable de tout dommage ou problème dû à l'utilisation de contenu traduit de façon automatique.
A propos de l’évaluation de la charge utile HTTP et TCP