Latihan - Menambahkan aplikasi Azure Functions lain ke API yang sudah ada

Selesai

Ingat bahwa Anda ingin mengintegrasikan semua layanan mikro yang terpisah, yaitu Azure Functions, ke dalam satu API. Anda menambahkan aplikasi fungsi Produk ke instans API Management baru. Sekarang, Anda ingin menambahkan aplikasi fungsi lain ke API tersebut.

Dalam latihan ini, Anda menambahkan aplikasi fungsi Orders ke API dan menggunakan curl alat untuk menguji sistem terintegrasi.

Menguji fungsi OrderDetails

Sebelum kita menambahkan aplikasi fungsi Orders ke API, mari uji fungsi yang dihosting API- OrderDetails.

  1. Pada menu sumber daya Azure, atau dari halaman Beranda , pilih Semua sumber daya. Panel Semua sumber daya muncul.

  2. Urutkan sumber daya menurut Jenis, lalu pilih Aplikasi Fungsi yang namanya dimulai dengan OrderFunction. Panel Gambaran Umum untuk Aplikasi Fungsi OrderFunction muncul.

  3. Dari daftar fungsi untuk aplikasi fungsi Anda, pilih OrderDetails. Panel Gambaran Umum Fungsi OrderDetails muncul.

  4. Di menu Detail Pesanan, di bawah Pengembang, pilih Kode + Uji. Panel Kode + Uji untuk fungsi OrderDetails muncul, menampilkan isi file function.json.

    OrderDetails JSON code, with Code + Test in menu and Test/Run in command bar highlighted.

  5. Di bilah perintah, pilih Uji/Jalankan. Tab parameter Input untuk fungsi OrderDetails Anda muncul.

  6. Di bidang Metode HTTP, pilih GET dari daftar tarik-turun, lalu di bawah Kueri, pilih Tambahkan parameter, dan di bidang Nama, masukkan nama, dan di bidang Nilai, masukkan Chiba (nilai peka huruf besar/kecil), lalu pilih Jalankan.

  7. Konsol log membuka dan menampilkan status permintaan. Tab Output menampilkan kode respons HTTP dan isi dalam format JSON.

    Add a new function option page appears.

    Secara opsional, Anda dapat menjalankan lebih banyak permintaan menggunakan nilai nama Henri dan Barriclough untuk mendapatkan pesanan pelanggan yang berbeda.

  8. Pilih Tutup untuk menutup tab Output Input untuk Uji/Jalankan.

  9. Di bilah perintah panel OrderDetails, pilih Dapatkan URL fungsi. Perhatikan bahwa URL adalah nama fungsi dalam domain azurewebsites.net.

Menambahkan fungsi ke API yang ada

Dalam langkah ini, kami menambahkan fungsi Order ke sumber daya API Management yang kami buat di latihan sebelumnya. Dalam latihan itu, kami menggunakan antarmuka API Management dari dalam antarmuka aplikasi fungsi. Di sini, kami menavigasi ke instans API Management kami melalui menu sumber daya portal Azure, hanya untuk menunjukkan bahwa kedua pendekatan tersedia.

  1. Di menu sumber daya Azure, atau dari halaman Beranda, pilih Semua sumber daya. Panel Semua sumber daya muncul.

  2. Urutkan sumber daya menurut Jenis, lalu pilih layanan API Management OnlineStore. Layanan API Management untuk OnlineStore muncul.

  3. Di menu, di bawah API, pilih API. Panel API menampilkan opsi untuk menentukan API baru.

  4. Di bawah Buat dari sumber daya Azure, pilih Aplikasi Fungsi.

    Screenshot of the Add a New API screen with a callout highlighting the Azure Function App option.

    Kotak dialog Buat dari Aplikasi Fungsi muncul.

  5. Untuk memilih aplikasi fungsi Anda, pilih Telusuri. Panel Impor Azure Functions muncul.

  6. Di bidang Konfigurasikan pengaturan yang diperlukan, pilih Pilih.

    Screenshot of the Import Azure Functions dialog box with Configure required settings field and Select button highlighted.(.. /media/5-import-azure-function-app-03-expanded.png#lightbox)

    Panel Pilih Aplikasi Azure Function muncul.

  7. Pilih OrderFunctionNNNNNNNN, lalu pilih Pilih. Panel Impor Azure Functions muncul kembali dengan aplikasi fungsi OrderDetails Anda yang dikonfigurasi.

  8. Pastikan OrderDetails dicentang, lalu, di bagian bawah halaman, pilih Pilih untuk menambahkan fungsi. Kotak dialog Buat dari Aplikasi Fungsi muncul.

  9. Ganti nilai di bidang Akhiran URL API dengan pesanan. Perhatikan bagaimana perubahan ini memperbarui URL Dasar. Pilih Buat untuk membuat API Anda.

    Screenshot of the Create from Function App dialog populated with details of the Orders function.

    Layanan API Management OnlineStore menampilkan tab Desain dengan semua API yang tersedia (GET, POST) untuk OrderDetails.

Menguji titik akhir pesanan OnlineStore di portal

Sekarang setelah kami menambahkan OrderDetails ke API kami, mari kita uji dengan menggunakan alat API Management di portal Azure.

  1. Pada tab Desain API OrderFunctionNNNNNN, di bawah Semua operasi, pilih GET OrderDetails, lalu pilih tab Uji.

  2. Di bagian Parameter kueri, pilih Tambahkan parameter, dan masukkan nama di bidang NAME dan Chiba dan di bidang VALUE. Pilih Kirim.

  3. Tab pesan respons HTTP menunjukkan permintaan HTTP berhasil (HTTP/1.1/ 200 OK), bersama dengan objek JSON yang menunjukkan ID Pesanan, bersama dengan nama pelanggan, harga total pesanan, dan status pengiriman.

  4. Gulir ke atas ke bagian Permintaan HTTP; perhatikan bahwa permintaan tersebut dikirim ke subdomain dan subdirektori dalam domain azure-api.net. Lokasi ini berbeda dari domain host azurewebsites.net.

Menguji API gabungan

Kami dapat menggunakan alat baris perintah curl untuk mengirim permintaan ke API kami. cURL sangat ideal karena kami dapat menyertakan kunci langganan yang benar dengan permintaan. Permintaan juga memerlukan lokasi API, yang dihosting di API Management Azure dan, dalam kasus ini, terdiri dari fungsi Produk dan Pesanan.

  1. Di menu sumber daya Azure atau dari Beranda, pilih Semua sumber daya.

  2. Urutkan sumber daya menurut Jenis, lalu pilih layanan API Management OnlineStore. Layanan API Management untuk OnlineStore muncul.

  3. Di bagian Penting, arahkan kursor ke URL Gateway dan pilih ikon Salin ke clipboard.

  4. Di Azure Cloud Shell di sebelah kanan, mari kita tentukan beberapa variabel. Jalankan perintah berikut, ganti <paste URL here> tempat penampung dengan nilai URL yang Anda salin ke clipboard Anda, lalu tekan Enter. Nilai ini menentukan variabel gateway.

    GATEWAY_URL=<paste URL here>
    
  5. Di Azure, pada menu layanan Api Management OnlineStore, gulir ke bawah ke API, dan pilih Langganan. Panel Langganan muncul untuk instans API Management OnlineStore Anda.

  6. Untuk langganan semua akses bawaan, pilih elipsis ... di ujung kanan baris tersebut, lalu pilih Tampilkan/sembunyikan kunci dari menu konteks. Kunci primer dan kunci sekunder untuk API muncul.

  7. Di bidang Kunci primer, pilih ikon Salin ke clipboard.

  8. Di Cloud Shell, jalankan perintah berikut, ganti tempat penampung dengan nilai di clipboard Anda, lalu tekan Enter.

    SUB_KEY=<paste key here>
    
  9. Sekarang kita dapat meminta detail pesanan dan produk dengan melakukan kueri layanan API Management yang sama:

    1. Untuk meminta detail pelanggan bernama Henri, jalankan perintah berikut di Cloud Shell:

       curl -X GET "$GATEWAY_URL/orders/OrderDetails?name=Henri" -H "Ocp-Apim-Subscription-Key:$SUB_KEY"
      

      Respons berisi blok kode JSON dengan detail pesanan yang menunjukkan bahwa Pesanan 56224 dikirim ke Pascale Henri. Anda juga dapat mencoba perintah dengan nama Chiba dan Barriclough untuk hasil yang berbeda.

    2. Untuk meminta detail produk dengan id2, jalankan perintah berikut di Cloud Shell:

       curl -X GET "$GATEWAY_URL/products/ProductDetails?id=2" -H "Ocp-Apim-Subscription-Key:$SUB_KEY"
      

      Tanggapan berisi blok kode JSON dengan detail produk. Anda juga dapat mencoba perintah dengan nilai id1 dan 3 untuk hasil yang berbeda.

Perhatikan bahwa kedua fungsi sekarang dapat dipanggil melalui titik akhir dalam domain azure-api.net (sebagaimana didefinisikan oleh GATEWAY_URL), yang merupakan domain yang digunakan oleh Azure API Management. Di modul Pembelajaran lainnya, Anda dapat mempelajari cara menerapkan kebijakan, pengaturan keamanan, cache eksternal, dan fitur lain ke semua fungsi dalam Gateway API Management. Gateway memberi Anda titik kontrol pusat, tempat Anda dapat mengelola beberapa layanan mikro tanpa mengubah kodenya.