Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Comportements de transfert direct
Avec des intégrations différentes de proxy, lorsqu'une demande de méthode comporte une charge utile et que l'en-tête Content-Type
ne correspond à aucun modèle de mappage spécifié ou qu'aucun modèle de mappage n'est défini, vous pouvez choisir de transmettre la charge utile de la demande fournie par le client via la demande d'intégration au backend sans transformation. Ce processus est appelé transfert direct d'intégration.
Pour les intégrations de proxy, API Gateway transmet l'intégralité de la demande à votre backend, et vous n'avez pas la possibilité de modifier les comportements de transmission.
Le comportement de transfert direct réel d'une demande entrante est déterminé par l'option que vous choisissez pour un modèle de mappage spécifique pendant la configuration de la demande d'intégration et par l'en-tête Content-Type qu'un client définit dans la demande entrante. Trois options sont disponibles :
- Quand aucun modèle ne correspond à l'en-tête Content-Type de la demande
Sélectionnez cette option si vous voulez que le corps de la demande de méthode soit transmis au backend via la demande d'intégration sans transformation lorsque le type de contenu de la demande de méthode ne correspond à aucun type de contenu associé aux modèles de mappage.
Lorsque vous appelez la API passerelleAPI, vous choisissez cette option en la définissant
WHEN_NO_MATCH
comme valeur depassthroughBehavior
propriété sur l'intégration.- Quand aucun modèle n'est défini (recommandé)
-
Choisissez cette option si vous voulez que le corps de la demande de méthode soit transmis au backend via la demande d'intégration sans transformation lorsqu'aucun modèle de mappage n'est défini dans la demande d'intégration. Si un modèle est défini lorsque cette option est sélectionnée, la demande de méthode d'un type de contenu non mappé sera rejetée avec une réponse HTTP 415 Unsupported Media Type.
Lorsque vous appelez la API passerelleAPI, vous choisissez cette option en la définissant
WHEN_NO_TEMPLATES
comme valeur depassthroughBehavior
propriété sur l'intégration. - Jamais
-
Choisissez cette option si vous ne voulez pas que le corps de la demande de méthode soit transmis au backend via la demande d'intégration sans transformation lorsqu'aucun modèle de mappage n'est défini dans la demande d'intégration. Si un modèle est défini lorsque cette option est sélectionnée, la demande de méthode d'un type de contenu non mappé sera rejetée avec une réponse HTTP 415 Unsupported Media Type.
Lorsque vous appelez la API passerelleAPI, vous choisissez cette option en la définissant
NEVER
comme valeur depassthroughBehavior
propriété sur l'intégration.
Les exemples suivants illustrent les comportements de transfert direct possibles.
Exemple 1 : un modèle de mappage est défini dans la demande d'intégration pour le type de contenu application/json
.
En-tête Content-type\Option de transfert direct sélectionnée | WHEN_NO_MATCH |
WHEN_NO_TEMPLATES |
NEVER |
---|---|---|---|
Aucun (la valeur par défaut est application/json ) |
La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. |
application/json |
La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. |
application/xml |
La charge utile de la demande n'est pas transformée et est envoyée en l'état au backend. | La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
Exemple 2 : un modèle de mappage est défini dans la demande d'intégration pour le type de contenu application/xml
.
En-tête Content-type\Option de transfert direct sélectionnée | WHEN_NO_MATCH |
WHEN_NO_TEMPLATES |
NEVER |
---|---|---|---|
Aucun (la valeur par défaut est application/json ) |
La charge utile de la demande n'est pas transformée et est envoyée en l'état au backend. | La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
application/json |
La charge utile de la demande n'est pas transformée et est envoyée en l'état au backend. | La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
La demande est rejetée avec une HTTP 415 Unsupported Media
Type réponse. |
application/xml |
La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. | La charge utile de la demande est transformée à l'aide du modèle. |