CorsConfiguration - AWS Serverless Application Model

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

CorsConfiguration

Kelola cross-origin resource sharing (CORS) untuk API Gateway Anda. Tentukan domain untuk diizinkan sebagai string atau tentukan kamus dengan konfigurasi Cors tambahan.

catatan

CORS AWS SAM perlu memodifikasi definisi OpenAPI Anda. Buat definisi OpenAPI sebaris di untuk mengaktifkan DefinitionBody CORS. Jika CorsConfiguration disetel dalam definisi OpenAPI dan juga di tingkat properti, AWS SAM gabungkan mereka. Level properti lebih diutamakan daripada definisi OpenAPI.

Untuk informasi lebih lanjut tentang CORS, lihat Aktifkan CORS untuk sumber daya API REST API Gateway di Panduan Developer API Gateway.

Sintaks

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

YAML

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

Properti

AllowCredentials

Boolean yang menunjukkan apakah permintaan diizinkan untuk berisi kredensial.

Tipe: Boolean

Wajib: Tidak

AWS CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki AWS CloudFormation padanan.

AllowHeaders

String header yang akan diizinkan.

Tipe: String

Wajib: Tidak

AWS CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki AWS CloudFormation padanan.

AllowMethods

String yang berisi metode HTTP yang akan diizinkan.

Tipe: String

Wajib: Tidak

AWS CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki AWS CloudFormation padanan.

AllowOrigin

String asal yang akan diizinkan. Ini bisa berupa daftar yang dipisahkan koma dalam format string.

Tipe: String

Wajib: Ya

AWS CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki AWS CloudFormation padanan.

MaxAge

String yang berisi jumlah detik untuk men-cache permintaan CORS Preflight.

Tipe: String

Wajib: Tidak

AWS CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki AWS CloudFormation padanan.

Contoh

CorsConfiguration

Contoh Konfigurasi CORS. Ini hanyalah sebagian dari file AWS SAM template yang menunjukkan AWS::Serverless::Api definisi dengan CORS dikonfigurasi dan file. AWS::Serverless::Function Jika Anda menggunakan integrasi proxy Lambda atau integrasi proxy HTTP, backend Anda harus mengembalikanAccess-Control-Allow-Origin,, Access-Control-Allow-Methods dan header. Access-Control-Allow-Headers

YAML

Resources: ApiGatewayApi: Type: AWS::Serverless::Api Properties: StageName: Prod Cors: AllowMethods: "'POST, GET'" AllowHeaders: "'X-Forwarded-For'" AllowOrigin: "'www.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': 'www.example.com', 'Access-Control-Allow-Methods': 'POST, GET' }, 'body': json.dumps('Hello from Lambda!') }