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 berbagi sumber daya lintas asal (CORS) untuk API Gateway APIs Anda. Tentukan domain untuk diizinkan sebagai string atau tentukan kamus dengan konfigurasi Cors tambahan.

catatan

CORS AWS SAM perlu memodifikasi API definisi Terbuka Anda. Buat API definisi Terbuka sebaris di DefinitionBody untuk dihidupkanCORS. Jika CorsConfiguration diatur dalam API definisi Terbuka dan juga di tingkat properti, AWS SAM gabungkan mereka. Tingkat properti lebih diutamakan daripada definisi TerbukaAPI.

Untuk informasi selengkapnyaCORS, lihat Mengaktifkan CORS REST API Sumber Daya API Gateway di Panduan Pengembang 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 HTTP metode untuk mengizinkan.

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 menyimpan permintaan CORS Preflight cache.

Tipe: String

Wajib: Tidak

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

Contoh

CorsConfiguration

CORSContoh konfigurasi. Ini hanya sebagian dari file AWS SAM template yang menunjukkan AWS::Serverless::Api definisi dengan CORS konfigurasi dan fileAWS::Serverless::Function. Jika Anda menggunakan integrasi proxy Lambda atau integrasi HTTP proxy, 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: "'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!') }