CORS-Unterstützung für Endpunkte aktivieren

Mithilfe des Standardmechanismus CORS (Cross-Origin Resource Sharing) können XMLHttpRequest-Aufrufe (XHR), die auf einer Webseite ausgeführt werden, mit Ressourcen unterschiedlicher Herkunft interagieren. Ohne CORS verhindert die Same-Origin-Richtlinie, die von allen Browsern durchgesetzt wird, Anfragen für Ressourcen unterschiedlicher Herkunft. Weitere Hintergrundinformationen zu CORS finden Sie in der Referenzdokumentation zu Mozilla Developer Network (MDN).

Der CORS-Standard erfordert, dass Webclients einen CORS-Preflight OPTIONS ausführen, um festzustellen, ob der angeforderte Webserver CORS unterstützt. Wenn ein Webserver CORS-Anfragen unterstützt, wird die OPTIONS-Anfrage mit den richtigen CORS-Antwortheadern verarbeitet.

CORS in der Back-End-Anwendung verarbeiten

Wenn Ihr Backend CORS unterstützt, können Sie ESP oder ESPv2 so konfigurieren, dass die CORS-Anfrage an das Backend übergeben wird. Aktivieren Sie die Passthrough-Funktion in der OpenAPI-Spezifikation für Ihre API wie unten gezeigt:

swagger: "2.0"
host: "my-cool-api.endpoints.my-project-id.cloud.goog"
x-google-endpoints:
- name: "my-cool-api.endpoints.my-project-id.cloud.goog"
  allowCors: True

CORS mit ESP oder ESPv2 verarbeiten

Wenn Ihr Backend CORS nicht unterstützt, können Sie ESP oder ESPv2 zur Verarbeitung von CORS-Anfragen konfigurieren. Geben Sie dazu CORS-Start-up-Flags an. Bei diesem Ansatz werden CORS-Preflight-Anfragen nicht an die Backend-Anwendung weitergeleitet. Außerdem hängt ESP oder ESPv2 die konfigurierten CORS-Header an Antworten vom Backend-Dienst an, sofern zutreffend.

Die folgenden CORS-Startoptionen sind für ESP und ESPv2 verfügbar