Wie behebe ich die Fehler „Invalid mapping expression specified“ (Ungültiger Zuordnungsausdruck angegeben) von API Gateway?

Lesedauer: 2 Minute
0

Ich habe eine AWS CloudFormation-Vorlage oder OpenAPI-Definition verwendet, um eine Amazon API Gateway-API mit einer Proxy-Ressource zu erstellen. Wenn ich versuche, URL-Pfadparameter zur API hinzuzufügen, erhalte ich die Fehlermeldung „Invalid mapping expression specified“ (Ungültiger Zuordnungsausdruck angegeben). Wie behebe ich den Fehler?

Kurzbeschreibung

API Gateway gibt den Fehler Invalid mapping expression specified (Ungültiger Zuordnungsausdruck angegeben) zurück, wenn der Proxy-Pfadparameter {proxy+} keine definierte URL-Pfadparameterzuordnung hat.

Um diesen Fehler zu beheben, gehen Sie wie folgt vor:

Lösung

Für CloudFormation-Vorlagen

1.    Aktualisieren Sie die CloudFormation-Vorlage, sodass der Wert RequestParameter auf true gesetzt ist.

Beispiel für eine CloudFormation-Vorlage mit RequestParameters

...
.
.
  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.    Aktualisieren Sie Ihre API, indem Sie die CloudFormation-Vorlage verwenden, um den AWS CloudFormation-Stack zu aktualisieren.

Hinweis: Weitere Informationen zum Aktualisieren von API Gateway-Ressourcen finden Sie unter Referenz zum Amazon API Gateway-Ressourcentyp.

Für OpenAPI-Definitionen

1.    Aktualisieren Sie Ihre API-Definition, sodass die Parameter im Abschnitt x-amazon-apigateway-any-method die folgenden Werte haben:

      "x-amazon-apigateway-any-method": {
                "parameters": [
          {
            "name": "proxy",
            "in": "path",
            "required": true,
            "type": "string"
          }
        ]

....

....

}

2.    Aktualisieren Sie Ihre API, indem Sie Ihre aktualisierte API-Definitionsdatei in API Gateway importieren.

**Hinweis:**Weitere Informationen finden Sie unter Beschreibung von Parametern auf der OpenAPI-Website.

Testen des Setups

1.    Wählen Sie in der API Gateway-Konsole den Namen Ihrer API aus.

2.    Fügen Sie nach Bedarf URL-Pfadparameter für Ihren Anwendungsfall hinzu. Wenn Ihr Proxy-Pfadparameter eine korrekt definierte URL-Pfadparameterzuordnung enthält, wird kein Fehler angezeigt.


Verwandte Informationen

X-Amazon-APIGateway-Integration.RequestParameter-Objekt

Einrichten einer Proxy-Integration mit einer Proxy-Ressource

Einrichten von Datentransformationen für REST-APIs

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren