Konfigurieren CORS-Antwort-Header auf AWS Lambda?
Ich versuche, einen neuen Dienst erstellen, die mit AWS-API-Gateway, aber ich fand heraus, der browser ruft automatisch OPTIONEN Methode, um zu erhalten CORS Informationen.
Das problem ist, dass die AWS-API-Gateway nicht bieten eine native Methode zum konfigurieren von CORS-Header.
Ist es möglich, eine Lambda-Skript, um zu reagieren, um OPTIONEN Methode?
Hast du einen Blick auf "Aktivieren" CORS für eine Methode in der API-Gateway? Hast, die nicht funktionieren?
InformationsquelleAutor Alessandro Oliveira | 2015-08-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie
{proxy+}
Endpunkt, den Sie durchführen müssen, CORS-HTTP-requests in der Lambda-Funktion. Die Umsetzung hängt von den Rahmenbedingungen, die Sie verwenden. Für Express -, die einfachste Lösung ist einfach zu benutzen,Express CORS-middleware.Wenn Sie nicht wollen, zu behandeln
CORS
Anfragen vonLambda
, versuchen Sie, die Einstellungen IhresLambda Method
zu handhabenCORS
auf dieAPI Gateway
Ebene.Hier ist eine ausführliche offizielle tutorial für CORS-setup auf AWS-API-Gateway.
Es ist auch wichtig, dass Sie erlauben header
X-Api-Key
imAccess-Control-Allow-Headers
sonst auth funktioniert nicht und erhalten Sie Fehler.EDIT: Im November 2015 in der API-Gateway team eine neue Funktion Hinzugefügt, vereinfachen CORS-setup.
Ich bin damit einverstanden, die aws-docs sagt, dass für proxy-setups, die Antwort aus den http-back-End, wie sollte diese Aussehen für wie für node/express?
Versuchen Sie, erstellen eine
{proxy+}
Endpunkt und haben alle Anforderungen, die an die Lambda-Funktion.Diese Antwort ist nicht korrekt, wie oben angegeben. Die unten gekennzeichnet werden soll.
Diese Antwort ist richtig. Aber Lambda-level-Konfiguration ist erforderlich für {proxy+} Endpunkte, da alle Anfragen sind soeben durch aus-API-Gateway.
InformationsquelleAutor kixorz
Wenn Sie lambda-proxy aktiviert ist, müssen Sie die CORS-Header manuell:
https://serverless.com/framework/docs/providers/aws/events/apigateway#enabling-cors
InformationsquelleAutor sqren
Wenn Sie mit JQuery $.ajax, sendet der X-Requested-With mit dem folgenden BEITRAG die OPTIONS-Anforderung, so müssen Sie sicherstellen, dass Sie beim einrichten Ihrer OPTIONEN access-control-accept-headers, die auf AWS-API zu zählen, header: X-Requested-With, zusammen mit den anderen.
InformationsquelleAutor jomamaxx