CorsConfiguration - AWS Serverless Application Model

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.

CorsConfiguration

Verwalte die ursprungsübergreifende gemeinsame Nutzung von Ressourcen (CORS) für dein API Gateway. APIs Geben Sie die Domäne, die zugelassen werden soll, als Zeichenfolge an oder geben Sie ein Wörterbuch mit zusätzlicher Cors-Konfiguration an.

Anmerkung

CORSerfordert eine AWS SAM Änderung Ihrer API Open-Definition. Erstellen Sie eine API Inline-Open-Definition in derDefinitionBody, um sie zu aktivierenCORS. Wenn die in der API Open-Definition und auch auf Eigenschaftsebene festgelegt CorsConfiguration ist, werden sie AWS SAM zusammengeführt. Die Eigenschaftsebene hat Vorrang vor der Definition OpenAPI.

Weitere Informationen zu CORS finden Sie unter Enable CORS for an API Gateway REST API Resource im APIGateway Developer Guide.

Syntax

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

YAML

AllowCredentials: Boolean AllowHeaders: String AllowMethods: String AllowOrigin: String MaxAge: String

Eigenschaften

AllowCredentials

Boolescher Wert, der angibt, ob die Anfrage Anmeldeinformationen enthalten darf.

Typ: Boolesch

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

AllowHeaders

Zeichenfolge von Headern, die zugelassen werden sollen.

Typ: Zeichenfolge

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

AllowMethods

Zeichenfolge, die die erlaubten HTTP Methoden enthält.

Typ: Zeichenfolge

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

AllowOrigin

Quellzeichenfolge, die zugelassen werden soll. Dies kann eine durch Kommas getrennte Liste im Zeichenkettenformat sein.

Typ: Zeichenfolge

Erforderlich: Ja

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

MaxAge

Zeichenfolge, die die Anzahl der Sekunden für das Zwischenspeichern der CORS Preflight-Anfrage enthält.

Typ: Zeichenfolge

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Beispiele

CorsConfiguration

CORSBeispiel für eine Konfiguration. Dies ist nur ein Teil einer AWS SAM Vorlagendatei, die eine AWS::Serverless::Api Definition mit CORS konfiguriertem und einem enthältAWS::Serverless::Function. Wenn Sie eine Lambda-Proxyintegration oder eine HTTP Proxyintegration verwenden, muss Ihr Backend die Header Access-Control-Allow-OriginAccess-Control-Allow-Methods, und Access-Control-Allow-Headers zurückgeben.

YAML

Resources: ApiGatewayApi: Type: AWS::Serverless::Api Properties: StageName: Prod Cors: AllowMethods: "'POST, GET'" AllowHeaders: "'X-Forwarded-For'" AllowOrigin: "'https://example.com'" MaxAge: "'600'" AllowCredentials: true ApiFunction: # Adds a GET method at the root resource via an Api event Type: AWS::Serverless::Function Properties: Events: ApiEvent: Type: Api Properties: Path: / Method: get RestApiId: Ref: ApiGatewayApi Runtime: python3.10 Handler: index.handler InlineCode: | import json def handler(event, context): return { 'statusCode': 200, 'headers': { 'Access-Control-Allow-Headers': 'Content-Type', 'Access-Control-Allow-Origin': 'https://example.com', 'Access-Control-Allow-Methods': 'POST, GET' }, 'body': json.dumps('Hello from Lambda!') }