Memetakan tahapan API ke nama domain khusus untuk REST APIs - Amazon API Gateway

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

Memetakan tahapan API ke nama domain khusus untuk REST APIs

Anda menggunakan pemetaan API untuk menghubungkan tahapan API ke nama domain kustom. Ini mengirimkan lalu lintas ke Anda APIs melalui nama domain kustom Anda.

Pemetaan API menentukan API, tahap, dan jalur opsional yang akan digunakan untuk pemetaan. Misalnya, Anda dapat memetakan production tahap 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, misalnya orders/v1/items dan. orders/v2/items

catatan

Untuk mengonfigurasi pemetaan API dengan beberapa level, Anda harus menggunakan nama domain kustom Regional dengan 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 (none) kosong.

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 khusus https://api.example.com dengan 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. 123Pada 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 khusus yang dikonfigurasi dengan pemetaan tingkat tunggal, seperti hanya https://api.example.com/orders dan, API https://api.example.com/ Gateway akan memilihAPI 1, karena tidak ada jalur yang cocok dengannya. ordersandmore

Pembatasan

  • Dalam pemetaan API, nama domain khusus dan dipetakan APIs harus berada di akun yang sama AWS .

  • 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 HTTP APIs ke nama domain kustom regional dengan kebijakan keamanan TLS 1.2.

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

  • Setelah membuat pemetaan API, Anda harus membuat atau memperbarui catatan sumber daya penyedia DNS untuk dipetakan ke titik akhir API Anda.

  • Jika Anda membuat pemetaan API dengan beberapa level, API Gateway mengonversi semua nama header menjadi huruf kecil.

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.

Misalnya AWS Serverless Application Model template yang membuat semua sumber daya, lihat Sessions With SAM on GitHub.

AWS Management Console
  1. Masuk ke konsol API Gateway di https://console.aws.amazon.com/apigateway.

  2. Pilih Nama domain khusus dari panel navigasi utama.

  3. Pilih nama domain khusus.

  4. Pada tab pemetaan API, pilih Konfigurasi pemetaan API.

  5. Masukkan API, Stage, dan Path untuk pemetaan.

  6. Pilih Simpan.

AWS CLI

create-api-mappingPerintah berikut membuat pemetaan API. Dalam contoh ini, API Gateway mengirimkan permintaan api.example.com/v1/orders ke API dan tahap yang ditentukan.

catatan

Untuk membuat pemetaan API dengan beberapa level, Anda harus menggunakan. apigatewayv2

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

AWS CloudFormation Contoh berikut membuat pemetaan API.

catatan

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

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