Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat rute untuk API HTTP di API Gateway
Merutekan permintaan API yang masuk langsung ke sumber daya backend. Rute terdiri dari dua bagian: metode HTTP dan jalur sumber daya—misalnya,. GET /pets
Anda dapat menentukan metode HTTP spesifik untuk rute Anda. Atau, Anda dapat menggunakan ANY
metode untuk mencocokkan semua metode yang belum Anda tetapkan untuk sumber daya. Anda dapat membuat $default
rute yang bertindak sebagai tangkapan semua untuk permintaan yang tidak cocok dengan rute lain.
catatan
API Gateway menerjemahkan parameter permintaan yang disandikan URL sebelum meneruskannya ke integrasi backend Anda.
Bekerja dengan variabel jalur
Anda dapat menggunakan variabel jalur di rute API HTTP.
Misalnya, GET /pets/{petID}
rute menangkap GET
permintaan yang dikirimkan klien. https://
api-id
.execute-api.us-east-2
.amazonaws.com/pets/6
Variabel jalur serakah menangkap semua sumber daya anak dari suatu rute. Untuk membuat variabel jalur serakah, tambahkan +
ke nama variabel—misalnya,. {proxy+}
Variabel jalur serakah harus berada di ujung jalur sumber daya.
Bekerja dengan parameter string kueri
Secara default, API Gateway mengirimkan parameter string kueri ke integrasi backend Anda jika mereka disertakan dalam permintaan ke API HTTP.
Misalnya, ketika klien mengirim permintaan kehttps://
, parameter string kueri api-id
.execute-api.us-east-2
.amazonaws.com/pets?id=4&type=dog
?id=4&type=dog
dikirim ke integrasi Anda.
Bekerja dengan $default
rute
$default
Rute menangkap permintaan yang tidak secara eksplisit cocok dengan rute lain di API Anda.
Saat $default
rute menerima permintaan, API Gateway mengirimkan jalur permintaan lengkap ke integrasi. Misalnya, Anda dapat membuat API hanya dengan $default
rute dan mengintegrasikannya pada ANY
metode dengan titik akhir https://petstore-demo-endpoint.execute-api.com
HTTP. Saat Anda mengirim permintaan kehttps://
, API Gateway mengirimkan permintaan keapi-id
.execute-api.us-east-2
.amazonaws.com/store/checkouthttps://petstore-demo-endpoint.execute-api.com/store/checkout
.
Untuk mempelajari lebih lanjut tentang integrasi HTTP, lihatBuat integrasi proxy HTTP untuk API HTTP.
Permintaan API perutean
Saat klien mengirim permintaan API, API Gateway terlebih dahulu menentukan tahap mana yang akan merutekan permintaan tersebut. Jika permintaan secara eksplisit cocok dengan tahapan, API Gateway mengirimkan permintaan ke tahap tersebut. Jika tidak ada tahap yang sepenuhnya cocok dengan permintaan, API Gateway mengirimkan permintaan ke $default
panggung. Jika tidak ada $default
tahap, maka API kembali {"message":"Not
Found"}
dan tidak menghasilkan CloudWatch log.
Setelah memilih tahapan, API Gateway memilih rute. API Gateway memilih rute dengan kecocokan paling spesifik, menggunakan prioritas berikut:
Pertandingan penuh untuk rute dan metode.
Cocokkan rute dan metode dengan variabel jalur serakah (
{proxy+}
).$default
Rute.
Jika tidak ada rute yang cocok dengan permintaan, API Gateway {"message":"Not Found"}
akan kembali ke klien.
Misalnya, pertimbangkan API dengan $default
tahapan dan contoh rute berikut:
GET /pets/dog/1
GET /pets/dog/{id}
GET /pets/{proxy+}
ANY /{proxy+}
$default
Tabel berikut merangkum cara API Gateway merutekan permintaan ke rute contoh.
Permintaan | Rute yang dipilih | Penjelasan |
---|---|---|
|
|
Permintaan sepenuhnya cocok dengan rute statis ini. |
|
|
Permintaan sepenuhnya cocok dengan rute ini. |
|
|
Permintaan tidak sepenuhnya cocok dengan rute. Rute dengan |
|
|
|