Comment résoudre une erreur « Invalid mapping expression specified. » (expression de mappage non valide spécifiée) à partir d'API Gateway ?
Dernière mise à jour : 22-03-2021
J'ai utilisé une définition modèle AWS CloudFormation ou OpenAPI (Swagger) pour créer une API Amazon API Gateway avec une ressource de proxy. Lorsque je tente d'ajouter des paramètres de chemin URL à l'API, j'obtiens un message d'erreur « Invalid mapping expression specified. » (expression de mappage non valide spécifiée). Comment puis-je corriger ce problème ?
Brève description
API Gateway renvoie une Invalid mapping expression specified (expression de mappage non valide spécifiée) lorsque le paramètre de chemin d'accès proxy {proxy+} n'a pas de mappage de paramètre de chemin d'URL défini.
Pour résoudre l'erreur, procédez comme suit :
- Pour un modèle AWS CloudFormation, définissez la propriété RequestParameters de la section AWS::ApiGateway::Method.
- Pour une définition OpenAPI, définissez la section parameters (paramètres) sous l'objet x-amazon-apigateway-any-method.
Résolution
Pour les modèles CloudFormation
1. Mettez à jour le modèle CloudFormation de sorte que la valeur RequestParameters soit définie sur true (vrai).
Exemple de RequestParameters pour modèle CloudFormation
...
.
.
ProxyMethod:
Type: 'AWS::ApiGateway::Method'
Properties:
.
.
RequestParameters:
method.request.path.proxy: true
Integration:
RequestParameters:
integration.request.path.proxy: 'method.request.path.proxy'
IntegrationHttpMethod: ANY
.
.
...
Pour plus d'informations sur la mise à jour de ressources API Gateway, consultez Référence des types de ressources Amazon API Gateway.
2. Mettez à jour votre API à l'aide du modèle CloudFormation pour mettre à jour la pile AWS CloudFormation .
Pour les définitions OpenAPI
1. Mettez à jour la définition de votre API de sorte que parameters (paramètres) dans la section x-amazon-apigateway-any-method ait les valeurs suivantes :
"x-amazon-apigateway-any-method": {
"parameters": [
{
"name": "proxy",
"in": "path",
"required": true,
"type": "string"
}
]
....
....
}
Pour plus d'informations, consultez Description des paramètres sur le site Web OpenAPI.
2. Mettez à jour votre API en important votre fichier de définition d'API mis à jour dans API Gateway.
Tester la configuration
1. Dans la console API Gateway, choisissez le nom de votre API.
2. Ajoutez les paramètres de chemin d'adresse URL en fonction des besoins de votre cas d'utilisation.
Remarque : l'erreur Invalid mapping expression specified (expression de mappage non valide spécifiée) ne doit pas apparaître.
Informations connexes
Cet article vous a-t-il été utile ?
Besoin d'aide pour une question technique ou de facturation ?