AWS-API-Gateway : Ausführung fehlgeschlagen ist aufgrund der Konfiguration Fehler: Keine übereinstimmung für das output-mapping und keine Standard-Ausgabe-Zuordnung konfiguriert
In der AWS-API-Gateway, ich habe eine GET-Methode aufruft, die eine lambda-Funktion.
Wenn ich testen Sie die Methode in der API-Gateway dashboard, die lambda-Funktion erfolgreich ausgeführt, aber API-Gateway ist nicht mapping-Kontext.Erfolg() aufrufen, um ein Ergebnis 200 trotz Standard-mapping auf yes gesetzt.
Stattdessen bekomme ich diesen Fehler:
Execution failed due to configuration error: No match for output mapping and no default output mapping configured
Dies ist meine Integration Response setup:
- Und dies ist meine Methode response setup:
Grundsätzlich würde ich erwarten, dass die API-Gateway zu erkennen, die erfolgreiche lambda Ausführung und ordnen Sie es standardmäßig auf eine 200 Antwort, aber
dass das nicht passiert.
Weiß jemand, warum funktioniert das nicht?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es wurde ein Problem beim speichern der Standard-integration-response-mapping, das wurde behoben. Der Fehler verursachte Anforderungen an API-Methoden wurden nicht korrekt gespeichert, um wieder eine 500-Fehlermeldung, die CloudWatch-Protokolle sollten enthalten:
Da "AKTIVIEREN CORS' speichert die Standard-integration-Antwort, dieses Problem tauchte auch in Ihrem Szenario.
Weitere Informationen finden Sie in den AWS-Foren Eintrag: https://forums.aws.amazon.com/thread.jspa?threadID=221197&tstart=0
Besten,
Jurgen
Ich hatte das ähnliche Problem, habe es gelöst, indem Sie die Methode response 200
Was für mich gearbeitet:
1. In der Api-Gateway-Konsole erstellt OPTIONEN Methode manuell
2. In der Methode Response-Abschnitt erstellt unter OPTIONEN Methode Hinzugefügt 200 OK
3. Ausgewählte Option Methode und aktiviert CORS aus dem Menü
Habe das problem gefunden:
Amazon hatte Hinzugefügt, eine neue Schaltfläche in der API-Gateway-Ressourcen-Konfiguration
mit dem Titel "Aktivieren CORS'. Ich hatte früher geklickt haben, diese jedoch einmal aktiviert
es scheint nicht ein Weg, um es zu deaktivieren
CORS aktivieren Sie diese Schaltfläche verwenden (Anstelle von es manuell zu tun, die ist, was ich am Ende tun) zu verursachen scheint ein interner server-Fehler auch auf
erfolgreiche lambda-Ausführung.
LÖSUNG: ich löschte die Ressource und erstellt es wieder ohne zu klicken
auf 'Aktivieren CORS' dieser Zeit und alles hat gut funktioniert.
Dies scheint ein FEHLER zu sein mit diesem feature, aber vielleicht habe ich einfach nicht
verstehen es gut genug. Kommentar, wenn Sie weitere Informationen.
Danke.