Latihan - Membuat API baru di API Management dari aplikasi fungsi
Untuk memberikan Azure Functions kepada pengguna sebagai bagian dari API tunggal, Anda dapat menambahkannya ke Azure API Management.
Di perusahaan toko online Anda, pengembang Anda membuat beberapa Azure Functions sebagai layanan mikro. Setiap fungsi mengimplementasikan sebagian kecil dari fungsionalitas toko. Anda ingin merakit fungsi-fungsi ini menjadi satu API.
Dalam latihan ini, Anda membuat instans API Management baru lalu menambahkan fungsi Detail Produk ke dalamnya.
Membuat fungsi
Dalam langkah-langkah berikut, Anda menambahkan aplikasi Azure Function ke Azure API Management. Kemudian, Anda menambahkan aplikasi fungsi kedua ke instans API Management yang sama untuk membuat SATU API tanpa server dari beberapa fungsi. Mari mulai dengan menggunakan skrip untuk membuat fungsi:
Untuk mengkloning proyek fungsi, jalankan perintah berikut di Azure Cloud Shell di sebelah kanan.
git clone https://github.com/MicrosoftDocs/mslearn-apim-and-functions.git ~/OnlineStoreFuncs
Jalankan perintah berikut di Azure Cloud Shell untuk menyiapkan sumber daya Azure yang diperlukan yang kita butuhkan untuk latihan ini.
cd ~/OnlineStoreFuncs bash setup.sh
setup.sh
Skrip membuat dua aplikasi fungsi di grup sumber daya kotak pasir yang diaktifkan untuk modul ini. Seperti yang digambarkan dalam grafik berikut, setiap aplikasi menghosting satu fungsi -OrderDetails
danProductDetails
. Skrip juga menyiapkan akun penyimpanan untuk fungsi. Kedua fungsi memiliki URL di domain azurewebsites.net. Nama fungsi terdiri dari angka acak agar unik. Skrip ini membutuhkan waktu beberapa menit untuk diselesaikan.
Menguji fungsi ProductDetails
Sekarang, mari uji fungsi ProductDetails untuk melihat bagaimana perilakunya sebelum kita menambahkannya ke API Management.
Masuk ke portal Microsoft Azure menggunakan akun yang sama yang digunakan untuk mengaktifkan sandbox.
Pada menu portal Microsoft Azure atau dari halaman Beranda, pilih Semua sumber daya. Panel Semua sumber daya muncul.
Pilih Aplikasi Fungsi yang namanya dimulai dengan ProductFunction. Panel Aplikasi Fungsi muncul dengan tab Gambaran Umum dipilih.
Dari daftar fungsi untuk aplikasi fungsi Anda, pilih ProductDetails. Panel Fungsi ProductDetails muncul.
Di menu Detail Produk, di bawah Pengembang, pilih Kode + Uji. Panel Kode + Uji untuk fungsi ProductDetails muncul, menampilkan isi file
function.json
.Di bilah perintah, pilih Uji/Jalankan. Panel Input/Output muncul untuk menguji permintaan HTTP Anda.
Pada tab Input, dalam daftar turun bidang metode HTTP, pilih GET.
Di bawah Kueri, Pilih Tambahkan parameter
Di bidang Name, masukkan ID, dan di bidang Value, masukkan 3, lalu pilih Jalankan.
Panel log muncul untuk menyambungkan permintaan. Tab Output menampilkan kode respons HTTP (200 OK) dan isi untuk item 3 dalam database.
Secara opsional, Anda juga dapat menguji fungsi dengan memasukkan nilai ID 1 dan 2.
Pilih Tutup untuk menutup tab Output Input untuk Kode + Uji.
Di bilah perintah panel Kode + Uji ProductDetails, pilih Dapatkan URL fungsi. Perhatikan bahwa subdomain URL adalah nama aplikasi fungsi Anda, diikuti oleh domain azurewebsites.net.
Catatan
Anda dapat menggunakan URL ini untuk menguji fungsi di browser Anda. URL membutuhkan input; tambahkan &id=1
string kueri untuk meminta detail tentang item pertama dalam koleksi produk Anda.
Mengekspos aplikasi fungsi sebagai API menggunakan Azure API Management
Setelah aplikasi fungsi disebarkan dan diuji, mari kita ekspor sebagai API menggunakan Azure API Management sehingga dapat dipanggil dari aplikasi dan layanan lain.
Di menu sumber daya, pilih Semua sumber daya. Panel Semua sumber daya muncul.
Urutkan daftar sumber daya menurut jenis. Perhatikan bahwa Anda memiliki aplikasi OrderFunction dan aplikasi ProductFunction.
Pilih aplikasi fungsi ProductFunction.
Di menu Aplikasi Fungsi, gulir ke kategori API , lalu pilih API Management. Panel API Management muncul untuk aplikasi fungsi ProductFunction Anda.
Di bidang API Management, pilih Buat baru. Panel Instal gateway API Management muncul.
Masukkan nilai berikut untuk setiap pengaturan.
Pengaturan Nilai Langganan Langganan Concierge Grup sumber daya [nama grup sumber daya sandbox] Wilayah Pilih lokasi yang mendukung Rencana Penggunaan: (AS) US Barat, US Tengah Utara, Eropa Barat, Eropa Utara, Asia Tenggara, Australia Timur Nama sumber daya OnlineStore Nama organisasi OnlineStore Email administrator Masukkan alamat email. Tingkatan harga Konsumsi (99,95% SLA) Pilih Berikutnya: Pemantauan dan kosongkan opsi Application Insights.
Pilih Tinjau + Buat. Saat validasi selesai, pilih Buat untuk membuat instans API Management tertaut. Biarkan beberapa menit agar ekspor selesai.
Saat instans API Management disebarkan, pilih Tautkan API.
Panel layanan API Management Impor Azure Functions muncul dengan fungsi ProductDetails disorot.
Pilih tombol Pilih untuk melanjutkan. Kotak dialog Buat dari Aplikasi Fungsi muncul.
Ubah bidang Akhiran URL API menjadi produk, lalu pilih Buat. Azure membuat API untuk fungsi ProductDetails. Tab Desain untuk panel API Management untuk aplikasi fungsi Anda muncul.
Latihan ini menunjukkan bahwa Anda dapat menentukan API Anda, semuanya dari dalam layanan Azure Function App.
Menguji titik akhir produk OnlineStore
Anda sekarang memiliki API ProductDetails
dalam instans API Management yang Anda buat. Mari kita uji API itu dengan alat API Management di Azure.
Di panel API Management pada aplikasi fungsi Anda, pilih tab Uji. Operasi yang tersedia untuk API Anda muncul di kolom kiri.
Pilih GET ProductDetails. Panel Konsol ProductDetails muncul.
Di bagian Parameter kueri, pilih Tambahkan parameter.
Di bidang NAME, masukkan id, dan di bidang VALUE, masukkan 1, lalu pilih Kirim untuk membuat permintaan GET.
Bagian Respons HTTP konsol memiliki dua tab, Pesan dan Lacak. Tab Pesan diisi dengan respons HTTP. Detail produk muncul dalam format JSON di akhir respons. Gulir ke atas ke bagian Permintaan HTTP dan perhatikan format permintaan. Permintaan tersebut dikirim ke tujuan di domain azure-api.net. Lokasi ini berbeda dari domain azurewebsites.net tempat aplikasi fungsi dihosting. Anda dapat menguji API ini dengan parameter kueri lainnya, seperti id=2 atau id=3.