Comment résoudre les erreurs « Expression de mappage non valide spécifiée » à partir de l’API Gateway ?

Dernière mise à jour : 13/10/2021

J'ai utilisé un modèle AWS CloudFormation ou une définition OpenAPI 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 :

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
        .
        .
...

2.    Mettez à jour votre API à l'aide du modèle CloudFormation pour mettre à jour la pile AWS CloudFormation .

Remarque : pour plus d'informations sur la mise à jour de ressources API Gateway, consultez Référence des types de ressources Amazon API Gateway.

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"
          }
        ]

....

....

}

2.    Mettez à jour votre API en important votre fichier de définition d'API mis à jour dans API Gateway.

Remarque : pour plus d'informations, consultez Description des paramètres sur le site Web OpenAPI.

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. Si votre paramètre de chemin proxy inclut un mappage de paramètre de chemin d'URL correctement défini, aucune erreur ne s'affiche.