Perilaku passthrough integrasi - Amazon API Gateway

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

Perilaku passthrough integrasi

Dengan integrasi non-proxy, ketika permintaan metode membawa muatan dan Content-Type header tidak cocok dengan templat pemetaan tertentu atau tidak ada templat pemetaan yang ditentukan, Anda dapat memilih untuk meneruskan payload permintaan yang disediakan klien melalui permintaan integrasi ke backend tanpa transformasi. Proses ini dikenal sebagai integrasi passthrough.

Untuk integrasi proxy, API Gateway meneruskan seluruh permintaan ke backend Anda, dan Anda tidak memiliki opsi untuk mengubah perilaku passthrough.

Perilaku passthrough aktual dari permintaan masuk ditentukan oleh opsi yang Anda pilih untuk templat pemetaan tertentu, selama pengaturan permintaan integrasi, dan header Jenis Konten yang ditetapkan klien dalam permintaan masuk. Ada tiga opsi:

Bila tidak ada template yang cocok dengan header Content-Type permintaan

Pilih opsi ini jika Anda ingin badan permintaan metode melewati permintaan integrasi ke backend tanpa transformasi ketika jenis konten permintaan metode tidak cocok dengan jenis konten apa pun yang terkait dengan templat pemetaan.

Saat memanggil API Gateway API, Anda memilih opsi ini dengan menetapkan WHEN_NO_MATCH sebagai nilai passthroughBehavior properti pada Integrasi.

Ketika tidak ada templat yang ditentukan (disarankan)

Pilih opsi ini jika Anda ingin badan permintaan metode melewati permintaan integrasi ke backend tanpa transformasi ketika tidak ada templat pemetaan yang ditentukan dalam permintaan integrasi. Jika templat ditentukan saat opsi ini dipilih, permintaan metode dari jenis konten yang tidak dipetakan akan ditolak dengan respons Jenis Media Tidak Didukung HTTP 415.

Saat memanggil API Gateway API, Anda memilih opsi ini dengan menetapkan WHEN_NO_TEMPLATES sebagai nilai passthroughBehavior properti pada Integrasi.

Tidak pernah

Pilih opsi ini jika Anda tidak ingin badan permintaan metode melewati permintaan integrasi ke backend tanpa transformasi ketika tidak ada templat pemetaan yang ditentukan dalam permintaan integrasi. Jika templat ditentukan saat opsi ini dipilih, permintaan metode dari jenis konten yang tidak dipetakan akan ditolak dengan respons Jenis Media Tidak Didukung HTTP 415.

Saat memanggil API Gateway API, Anda memilih opsi ini dengan menetapkan NEVER sebagai nilai passthroughBehavior properti pada Integrasi.

Contoh-contoh berikut menggambarkan kemungkinan perilaku passthrough.

Contoh 1: Satu template pemetaan didefinisikan dalam permintaan integrasi untuk jenis application/json konten.

Header tipe konten\ Opsi passthrough yang dipilih WHEN_NO_MATCH WHEN_NO_TEMPLATES NEVER
Tidak ada (default keapplication/json) Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat.
application/json Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat.
application/xml Payload permintaan tidak diubah dan dikirim ke backend apa adanya. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP.

Contoh 2: Satu template pemetaan didefinisikan dalam permintaan integrasi untuk jenis application/xml konten.

Header tipe konten\ Opsi passthrough yang dipilih WHEN_NO_MATCH WHEN_NO_TEMPLATES NEVER
Tidak ada (default keapplication/json) Payload permintaan tidak diubah dan dikirim ke backend apa adanya. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP.
application/json Payload permintaan tidak diubah dan dikirim ke backend apa adanya. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP. Permintaan ditolak dengan 415 Unsupported Media Type respons HTTP.
application/xml Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat. Muatan permintaan diubah menggunakan templat.