CORSFür HTTP APIs im API Gateway konfigurieren - APIAmazon-Gateway

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

CORSFür HTTP APIs im API Gateway konfigurieren

Cross-Origin Resource Sharing (CORS) ist eine Browser-Sicherheitsfunktion, die HTTP Anfragen einschränkt, die von Skripts initiiert werden, die im Browser ausgeführt werden. Wenn Sie nicht auf Ihre zugreifen können API und eine Fehlermeldung erhalten, die Folgendes enthältCross-Origin Request Blocked, müssen Sie es möglicherweise aktivieren. CORS Weitere Informationen finden Sie unter Was istCORS? .

CORSist in der Regel erforderlich, um Webanwendungen zu erstellen, die auf einer anderen Domain oder einem anderen Ursprung APIs gehostet werden. Sie können dies aktivierenCORS, um Anfragen an Sie API von einer Webanwendung zuzulassen, die auf einer anderen Domain gehostet wird. Wenn Ihr Server beispielsweise auf gehostet API wird https://{api_id}.execute-api.{region}.amazonaws.com/ und Sie ihn API von einer Webanwendung aus aufrufen möchtenexample.com, auf der Sie gehostet werden, API müssen Sie Support anbietenCORS.

Wenn Sie CORS für eine konfigurierenAPI, sendet API Gateway automatisch eine Antwort auf OPTIONS Preflight-Anfragen, auch wenn für Ihre API keine OPTIONS Route konfiguriert ist. Bei einer CORS Anfrage fügt API Gateway der Antwort einer Integration die konfigurierten CORS Header hinzu.

Anmerkung

Wenn Sie CORS für eine konfigurierenAPI, ignoriert API Gateway die von Ihrer Backend-Integration zurückgegebenen CORS Header.

Sie können die folgenden Parameter in einer Konfiguration angeben. CORS Um diese Parameter über die API HTTP API Gateway-Konsole hinzuzufügen, wählen Sie Hinzufügen, nachdem Sie Ihren Wert eingegeben haben.

CORSKopfzeilen CORSKonfigurationseigenschaft Beispielwerte

Access-Control-Allow-Origin

allowOrigins

  • https://www.example.com

  • * (alle Ursprünge zulassen)

  • https://* (einen beliebigen Ursprung zulassen, der mit https:// beginnt)

  • http://* (einen beliebigen Ursprung zulassen, der mit http:// beginnt)

Access-Control-Allow-Credentials

allowCredentials

true

Access-Control-Expose-Headers

exposeHeaders

Datum x-api-id, *

Access-Control-Max-Age

maxAge

300

Access-Control-Allow-Methods

allowMethods

GET, POST, DELETE, *

Access-Control-Allow-Headers

allowHeaders

Autorisierung, *

Um CORS Header zurückzugeben, muss Ihre Anfrage einen origin Header enthalten. Für die OPTIONS Methode muss Ihre Anfrage einen origin Header und einen Access-Control-Request-Method Header enthalten.

Ihre CORS Konfiguration könnte wie folgt aussehen:

CORSKonfiguration für HTTP APIs

Konfiguration CORS für und HTTP API mit einer $default Route und einem Authorizer

Sie können die Autorisierung für jede Route eines HTTP API aktivieren CORS und konfigurieren. Bei der Aktivierung CORS und Autorisierung der $defaultRoute sind einige Besonderheiten zu beachten. Die $default-Route fängt Anforderungen für alle Methoden und Routen ab, die Sie nicht explizit definiert haben, einschließlich OPTIONS-Anforderungen. Um nicht autorisierte OPTIONS Anfragen zu unterstützen, fügen Sie Ihrer OPTIONS /{proxy+} Route eine Route hinzuAPI, für die keine Autorisierung erforderlich ist, und fügen Sie der Route eine Integration hinzu. Die Route OPTIONS /{proxy+} hat eine höhere Priorität als die Route $default. Dadurch können Kunden OPTIONS Anfragen API ohne Genehmigung an Sie richten. Weitere Informationen zu Weiterleitungsprioritäten finden Sie unter Weiterleiten von API-Anforderungen.

Konfigurieren Sie CORS für und mit dem HTTP API AWS CLI

Sie können den folgenden update-api-Befehl verwenden, um CORS Anfragen von zu aktivieren. https://www.example.com

aws apigatewayv2 update-api --api-id api-id --cors-configuration AllowOrigins="https://www.example.com"

Weitere Informationen finden Sie CORSin der Amazon API Gateway Version API 2-Referenz.