Mengimpor Azure Container App sebagai API

BERLAKU UNTUK: Semua tingkatAN API Management

Artikel ini menunjukkan cara mengimpor Azure Web App ke Azure API Management dan menguji API yang telah diimpor dengan menggunakan portal Azure. Dalam artikel ini, Anda akan mempelajari cara:

  • Mengimpor Container App yang mengekspos API Web
  • Menguji API di portal Microsoft Azure

Mengekspos Container App dengan API Management

Azure Container Apps memungkinkan Anda dalam menyebarkan aplikasi kontainer tanpa mengelola infrastruktur yang kompleks. Pengembang API dapat menulis kode menggunakan bahasa pemrogram atau kerangka kerja pemrograman pilihan mereka, membangun layanan mikro dengan dukungan penuh untuk Distributed Application Runtime (Dapr), dan menskalakan berdasarkan lalu lintas HTTP atau kejadian lainnya.

API Management adalah lingkungan yang direkomendasikan untuk mengekspos API web yang dihosting Container App alasan berikut:

  • Memisahkan antara pengelolaan dan pengamanan front end yang diekspos kepada konsumen API agar tidak mengelola dan memantau backend API web
  • Mengelola API web yang dihosting sebagai Container Apps di lingkungan yang sama dengan API Anda yang lain
  • Menerapkan kebijakan untuk mengubah perilaku API, seperti pembatasan tarif panggilan
  • Mengarahkan konsumen API ke portal pengembang yang dapat disesuaikan dari API Management untuk ditemukan dan mempelajari tentang API, meminta akses, dan mencobanya

Untuk mengetahui informasi selengkapnya, lihat Tentang API Management.

Spesifikasi OpenAPI versus operasi karakter kartubebas

API Management mendukung impor Container Apps yang menyediakan spesifikasi OpenAPI (definisi Swagger). Namun, spesifikasi OpenAPI tidak diperlukan. Sebaiknya berikan spesifikasi OpenAPI. API Management dapat mengimpor operasi individual, sehingga Anda dapat memvalidasi, mengelola, mengamankan, dan memperbarui konfigurasi untuk setiap operasi secara terpisah.

Jika Container App mengekspos spesifikasi OpenAPI, API Management akan membuat operasi API yang memetakan secara langsung ke definisi. API Management akan melihat Spesifikasi OpenAPI di beberapa lokasi

  • Konfigurasi Container App.
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Jika spesifikasi OpenAPI tidak disediakan, API Management menghasilkan operasi karakter kartubebas untuk kata kerja HTTP umum (GET, PUT, dan sebagainya). Anda masih dapat memanfaatkan fitur API Management yang sama, tetapi operasi tidak akan ditentukan pada tingkat detail yang sama.

Dalam kedua kasus, Anda dapat mengedit atau menambahkan operasi ke API yang diimpor.

Contoh

Container App backend Anda mungkin mendukung dua operasi GET:

  • https://myappservice.azurewebsites.net/customer/{id}
  • https://myappservice.azurewebsites.net/customers

Anda mengimpor Container App ke layanan API Management di jalur seperti https://contosoapi.azure-api.net/store. Tabel berikut menunjukkan operasi yang diimpor ke API Management, baik dengan atau tanpa spesifikasi OpenAPI:

Jenis Operasi yang diimpor Sampel permintaan
spesifikasi OpenAPI GET /customer/{id}

GET /customers
GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers
Kartubebas GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers

Operasi karakter kartubebas memungkinkan permintaan yang sama ke layanan backend sebagai operasi dalam spesifikasi OpenAPI. Namun, operasi yang ditentukan OpenAPI dapat dikelola secara terpisah dalam API Management.

Prasyarat

Membuka instans API Management Anda

  1. Di portal Microsoft Azure, cari dan pilih layanan API Management.

    Pilih layanan API Management

  2. Di halaman layanan API Management, pilih instans API Management Anda.

    Pilih instans API Management Anda

Mengimpor dan menerbitkan API backend

  1. Navigasikan ke layanan API Management Anda di portal Microsoft Azure dan pilih API dari menu.

  2. Pilih Container App dari daftar.

    Membuat dari Aplikasi Kontainer

  3. Pilih Telusuri untuk melihat daftar Container Apps di langganan Anda.

  4. Pilih Container App. Jika definisi OpenAPI dikaitkan dengan Container App yang dipilih, API Management akan mengambilnya dan mengimpornya. Jika definisi OpenAPI tidak ditemukan, API Management akan mengekspos API dengan membuat operasi karakter kartubebas untuk kata kerja HTTP umum.

  5. Menambahkan akhiran URL API. Akhiran adalah nama yang mengidentifikasi API khusus ini dalam instans API Management ini. Akhiran harus unik dalam instans API Management ini.

  6. Publikasikan API dengan mengaitkan API dengan produk. Dalam hal ini, produk "Tidak Terbatas" digunakan. Jika Anda ingin API diterbitkan dan tersedia untuk pengembang, tambahkan API ke produk.

    Catatan

    Produk adalah kumpulan dari satu atau beberapa API. Anda dapat menyertakan sejumlah API dan menawarkannya kepada pengembang melalui portal pengembang. Pengembang harus terlebih dahulu berlangganan produk untuk mendapatkan akses ke API. Saat berlangganan, mereka mendapatkan kunci langganan yang sesuai untuk API dalam produk tersebut. Jika Anda telah membuat instans API Management, artinya Anda telah menjadi administrator dan sudah berlangganan ke setiap produk secara default.

    Setiap instans API Management dilengkapi dengan dua produk sampel saat dibuat:

    • Starter
    • Tidak Terbatas
  7. Masukkan pengaturan API lainnya. Anda dapat mengatur nilai selama pembuatan atau mengkonfigurasinya nanti dengan masuk ke tab Pengaturan. Pengaturan dijelaskan dalam tutorial Mengimpor dan menerbitkan API pertama Anda.

  8. Pilih Buat.

    Membuat API dari Aplikasi Kontainer

Menguji API baru di portal Microsoft Azure

Operasi dapat dipanggil langsung dari portal Microsoft Azure, yang menyediakan cara mudah untuk melihat dan menguji operasi API. Anda juga dapat menguji API di portal pengembang atau menggunakan alat klien REST Anda sendiri.

  1. Memilih API yang Anda buat di langkah sebelumnya.

  2. Pilih tab Uji.

  3. Pilih operasi.

    Halaman ini menampilkan bidang untuk parameter dan bidang kueri untuk header. Salah satu headernya adalah Ocp-Apim-Subscription-Key untuk kunci langganan produk yang terkait dengan API ini. Jika Anda membuat instans API Management, Anda sudah menjadi administrator, sehingga kunci terisi secara otomatis.

  4. Tekan Kirim.

    Saat pengujian berhasil, backend merespons dengan 200 OK dan beberapa data.

Menguji operasi karakter kartubebas di portal

Saat operasi karakter kartubebas dibuat, operasi mungkin tidak memetakan langsung ke backend API. Misalnya, operasi karakter kartubebas GET yang diimpor dalam API Management menggunakan jalur / secara default. Namun, backend API Anda mungkin mendukung operasi GET di jalur berikut:

/api/TodoItems

Anda dapat menguji jalur /api/TodoItems sebagai berikut.

  1. Pilih API yang Anda buat, dan pilih operasi.

  2. Pilih tab Uji.

  3. Di parameter Template, perbarui nilai di samping nama karakter kartubebas (*). Misalnya, masukkan api/TodoItems. Nilai ini ditambahkan ke jalur / untuk operasi karakter kartubebas.

    Menguji operasi karakter kartubebas

  4. Pilih Kirim.

Menambahkan API lainnya

Anda dapat membuat API dari API yang diekspos oleh berbagai layanan, termasuk:

  • Spesifikasi OpenAPI
  • API SOAP
  • A GraphQL API
  • Aplikasi Web yang dihosting di Azure App Service
  • Azure Function App
  • Azure Logic Apps
  • Azure Service Fabric

Tambahkan API yang berbeda ke API yang ada menggunakan langkah-langkah berikut.

Catatan

Saat mengimpor API lain, operasi ditambahkan ke API Anda saat ini.

  1. Buka instans API Management Azure Anda di portal Microsoft Azure.

    Membuka instans Mgmt API Azure

  2. Pilih API pada halaman Ringkasan atau dari menu di sebelah kiri.

    Pilih API

  3. Klik ... di samping API tempat Anda ingin menambahkan API lain.

  4. Pilih Impor dari menu turun.

    Pilih impor

  5. Pilih layanan untuk mengimpor API.

    Pilih layanan

Langkah berikutnya