Bekerja dengan pemetaan API untuk REST API - Amazon API Gateway

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

Bekerja dengan pemetaan API untuk REST API

Anda menggunakan pemetaan API untuk menghubungkan tahapan API ke nama domain kustom. Setelah membuat nama domain dan mengonfigurasi catatan DNS, Anda menggunakan pemetaan API untuk mengirim lalu lintas ke API melalui nama domain kustom Anda.

Pemetaan API menentukan API, tahap, dan jalur opsional yang akan digunakan untuk pemetaan. Misalnya, Anda dapat memetakanproductiontahap API kehttps://api.example.com/orders.

Anda dapat memetakan tahap HTTP dan REST API ke nama domain kustom yang sama.

Sebelum membuat pemetaan API, Anda harus memiliki API, panggung, dan nama domain khusus. Untuk mempelajari selengkapnya tentang membuat nama domain kustom, lihatMenyiapkan nama domain kustom regional di API Gateway.

Permintaan API perutean

Anda dapat mengonfigurasi pemetaan API dengan beberapa level, misalnyaorders/v1/itemsdanorders/v2/items.

catatan

Untuk mengonfigurasi pemetaan API dengan beberapa level, nama domain kustom Anda harus bersifat regional dan menggunakan kebijakan keamanan TLS 1.2.

Untuk pemetaan API dengan beberapa level, API Gateway merutekan permintaan ke pemetaan API yang memiliki jalur pencocokan terpanjang. API Gateway hanya mempertimbangkan jalur yang dikonfigurasi untuk pemetaan API, dan bukan rute API, untuk memilih API yang akan dipanggil. Jika tidak ada jalur yang cocok dengan permintaan, API Gateway mengirimkan permintaan ke API yang telah Anda petakan ke jalur kosong(none).

Untuk nama domain kustom yang menggunakan pemetaan API dengan beberapa level, API Gateway merutekan permintaan ke pemetaan API yang memiliki awalan pencocokan terpanjang.

Misalnya, pertimbangkan nama domain khusushttps://api.example.comdengan pemetaan API berikut:

  1. (none)dipetakan ke API 1.

  2. ordersdipetakan ke API 2.

  3. orders/v1/itemsdipetakan ke API 3.

  4. orders/v2/itemsdipetakan ke API 4.

  5. orders/v2/items/categoriesdipetakan ke API 5.

Permintaan API yang dipilih Penjelasan

https://api.example.com/orders

API 2

Permintaan sama persis dengan pemetaan API ini.

https://api.example.com/orders/v1/items

API 3

Permintaan sama persis dengan pemetaan API ini.

https://api.example.com/orders/v2/items

API 4

Permintaan sama persis dengan pemetaan API ini.

https://api.example.com/orders/v1/items/123

API 3

API Gateway memilih pemetaan yang memiliki jalur pencocokan terpanjang. The123di akhir permintaan tidak mempengaruhi pemilihan.

https://api.example.com/orders/v2/items/categories/5

API 5

API Gateway memilih pemetaan yang memiliki jalur pencocokan terpanjang.

https://api.example.com/customers

API 1

API Gateway menggunakan pemetaan kosong sebagai tangkapan semua.

https://api.example.com/ordersandmore

API 2

API Gateway memilih pemetaan yang memiliki awalan pencocokan terpanjang. Untuk nama domain kustom yang dikonfigurasi dengan pemetaan satu tingkat, seperti sajahttps://api.example.com/ordersdanhttps://api.example.com/, API Gateway akan memilihAPI 1, karena tidak ada jalur yang cocok denganordersandmore.

Pembatasan

  • Dalam pemetaan API, nama domain khusus dan API yang dipetakan harus samaAWSakun.

  • Pemetaan API harus hanya berisi huruf, angka, dan karakter berikut:$-_.+!*'()/.

  • Panjang maksimum jalur dalam pemetaan API adalah 300 karakter.

  • Anda dapat memiliki 200 pemetaan API dengan beberapa level untuk setiap nama domain.

  • Anda hanya dapat memetakan API HTTP ke nama domain kustom regional dengan kebijakan keamanan TLS 1.2.

  • Anda tidak dapat memetakanWebSocketAPI ke nama domain kustom yang sama dengan API HTTP atau REST API.

Buat pemetaan API

Untuk membuat pemetaan API, Anda harus terlebih dahulu membuat nama domain kustom, API, dan stage. Untuk informasi tentang membuat nama domain kustom, lihatMenyiapkan nama domain kustom regional di API Gateway.

Sebagai contohAWS Serverless Application Modeltemplate yang membuat semua sumber daya, lihatSesi Dengan SAMdi atasGitHub.

AWS Management Console
Untuk membuat pemetaan API
  1. Masuk ke konsol API Gateway dihttps://console.aws.amazon.com/apigateway.

  2. PilihNama domain kustom.

  3. Pilih nama domain khusus yang sudah Anda buat.

  4. PilihPemetaan API.

  5. PilihKonfigurasikan pemetaan API.

  6. PilihTambahkan pemetaan baru.

  7. Masukkan sebuahAPI, sebuahPanggung, dan secara opsional aJalan.

  8. Pilih Save (Simpan).

AWS CLI

Berikut iniAWS CLIperintah membuat pemetaan API. Dalam contoh ini, API Gateway mengirimkan permintaan keapi.example.com/v1/orderske API dan panggung yang ditentukan.

catatan

Untuk membuat pemetaan API dengan beberapa level, Anda harus menggunakanapigatewayv2.

aws apigatewayv2 create-api-mapping \ --domain-name api.example.com \ --api-mapping-key v1/orders \ --api-id a1b2c3d4 \ --stage test
AWS CloudFormation

Berikut iniAWS CloudFormationcontoh membuat pemetaan API.

catatan

Untuk membuat pemetaan API dengan beberapa level, Anda harus menggunakanAWS::ApiGatewayV2.

MyApiMapping: Type: 'AWS::ApiGatewayV2::ApiMapping' Properties: DomainName: api.example.com ApiMappingKey: 'orders/v2/items' ApiId: !Ref MyApi Stage: !Ref MyStage