Ekspos API dari Apache APISIX ke Power Platform

Bobur Umurzokov

Bobur Umurzokov

February 27, 2023

Technology

Apache APISIX API Gateway memungkinkan pengembang profesional untuk mempublikasikan layanan backend mereka sebagai API, memantau penggunaannya, dan dengan mudah mengekspos API ini ke Power Platform (Power Apps dan Power Automate) sebagai konektor kustom untuk penemuan dan mengintegrasikan endpoint API Gateway ke dalam aplikasi kustom tanpa harus menulis kode dari awal.

Dalam artikel ini, kami akan menunjukkan cara membuat konektor kustom untuk Apache APISIX API Gateway sumber terbuka di Power Platform sebagai alternatif untuk Azure API Management jika Anda membangun komponen tambahan ke sistem yang sudah ada dengan API yang dapat digunakan dan infrastruktur sistem Anda dihosting secara on-premise atau pada penyedia layanan cloud lain selain Azure.

Tujuan pembelajaran

Anda akan mempelajari hal-hal berikut sepanjang artikel:

  • Manfaat mengintegrasikan Power Apps dengan Apache APISIX.
  • Apa itu konektor kustom?
  • Menyiapkan konektor kustom baru untuk Apache APISIX API Gateway di Power Platform.
  • Membuat Canvas Mobile App di PowerApps yang menggunakan konektor kustom baru.

Manfaat mengintegrasikan Power Apps dengan Apache APISIX

Mengintegrasikan Power Apps dengan Apache APISIX memberikan beberapa manfaat bagi organisasi. Power Apps Anda dapat mengakses API Anda melalui API Gateway dan Anda dapat mengonfigurasi pengaturan tambahan di APISIX.

Berikut beberapa di antaranya:

  1. Keamanan yang ditingkatkan: Ini menawarkan "pembatasan permintaan lanjutan" untuk menghindari kesalahan tak terduga yang disebabkan oleh permintaan besar-besaran ke sistem backend dan mengatur kebijakan batas kecepatan untuk API backend Anda, autentikasi, dan enkripsi yang dapat diterapkan pada aplikasi kustom.

  2. Skalabilitas: Ini menangani volume lalu lintas yang tinggi dan dapat menyesuaikan skala naik atau turun berdasarkan permintaan. Ini berarti aplikasi kustom yang dibangun di Power Apps dapat menangani peningkatan volume lalu lintas seiring pertumbuhan bisnis.

  3. Kinerja: Ini menyediakan fitur seperti load balancing dan caching yang dapat meningkatkan kinerja aplikasi kustom yang dibangun di Power Apps.

Apa itu konektor kustom?

Konektor kustom di Power Apps adalah alat yang memungkinkan pengguna membuat koneksi antara aplikasi mereka dan sumber data eksternal atau API yang tidak didukung secara native oleh Power Apps, dalam kasus ini adalah Apache APISIX. Konektor kustom memberikan cara bagi pengguna untuk mengakses data dan layanan dari sistem eksternal dalam aplikasi mereka tanpa harus menulis kode kompleks atau melakukan konfigurasi yang rumit.

Konektor kustom dibuat dengan mendefinisikan endpoint API, metode, dan persyaratan autentikasi dari sistem eksternal, bersama dengan parameter yang diperlukan dan format respons. Setelah konektor kustom dibuat dan diautentikasi, konektor tersebut dapat digunakan di Power Apps untuk melakukan operasi seperti mengambil data, membuat catatan, memperbarui catatan, dan menghapus catatan.

Menyiapkan konektor kustom baru

Mari kita lihat contoh mengonfigurasi konektor kustom untuk Apache APISIX.

Untuk kasus demo, kami akan memanfaatkan proyek sampel yang dibangun di atas ASP.NET Core WEB API dengan satu endpoint GET (mengambil semua daftar produk) dan proyek sampel Docker Apache APISIX. Anda dapat menemukan semua instruksi tentang cara menjalankan aplikasi sampel di file README.

Prasyarat

  • Harus familiar dengan konsep dasar API.
  • Pengetahuan dasar tentang beberapa konsep inti APISIX seperti Route, Upstream dan Plugin.
  • Docker terinstal di mesin Anda untuk menjalankan APISIX.
  • Instal APISIX dan API backend Produk dengan docker compose.
  • Konfigurasi pengaturan yang diperlukan seperti endpoint API, upstream, dan aturan routing. Anda dapat mengikuti tutorial ini untuk menyiapkan APISIX API Gateway. Pastikan Anda membuat Route dan upstream dan APISIX harus meneruskan permintaan ke API target kami /api/products.
  • Latihan ini memerlukan akses ke konektor Premium Power Apps. Daftar untuk Developer Plan gratis.

Langkah 1: Mulai wizard konektor kustom

Untuk memulai, masuk ke portal Power Apps dan navigasikan ke bagian "Connectors". Klik tombol "New custom connector", lalu pilih "Create new from blank" dan berikan nama untuk konektor baru.

Gambar konektor kustom baru 1

Langkah 2: Berikan detail dasar untuk konektor Anda

Di tab "General", masukkan detail berikut untuk konektor Anda:

  • Nama konektor: Beri nama konektor Anda, misalnya "APISIX API Gateway".
  • Deskripsi: Berikan deskripsi singkat tentang konektor Anda.
  • Skema: Pastikan Anda juga memilih skema yang benar, untuk contoh ini, kita harus menggunakan HTTP, karena kita belum mengonfigurasi API kita untuk menggunakan HTTPS.
  • Centang opsi "Connect via on-premises data gateway". Anda perlu menginstal on-premise data gateway pada mesin di dalam jaringan Anda. Karena konektor kustom tidak dapat menggunakan localhost sebagai nama host tanpa menggunakan on-premises data gateway.
  • URL dasar: Masukkan URL dasar Apache APISIX API Gateway Anda. Misalnya, http://localhost:9080.

Gambar konektor kustom baru 2

Langkah 3: Pilih jenis autentikasi

Selanjutnya, beralih ke tab "Security" dan berikan detail autentikasi yang diperlukan berdasarkan jenis autentikasi yang akan digunakan oleh konektor kustom Anda. Misalnya, Basic, OAuth2, atau API Key.

Langkah 4: Definisikan endpoint API Anda

Di tab "Definition", Anda dapat mendefinisikan endpoint API yang ingin Anda ekspos dalam konektor kustom Anda. Misalnya, Anda mungkin mendefinisikan endpoint untuk mengambil semua daftar produk dari API Gateway.

Untuk mendefinisikan endpoint, ikuti langkah-langkah berikut:

  • Nama: Masukkan nama untuk endpoint Anda, misalnya "Get Product List".
  • Ringkasan: Berikan ringkasan singkat tentang apa yang dilakukan endpoint tersebut.
  • ID Operasi: Masukkan ID operasi unik untuk endpoint, misalnya "GetProducts".
  • Metode: Pilih metode HTTP yang digunakan oleh endpoint Anda, misalnya GET.
  • URL: Masukkan URL endpoint API untuk endpoint Anda, misalnya /api/products.
  • Permintaan: Tentukan parameter dan header permintaan yang diperlukan oleh endpoint Anda.
  • Respons: Tentukan skema respons yang dikembalikan oleh endpoint Anda.

Gambar konektor kustom baru 3

Anda dapat mendefinisikan sebanyak mungkin endpoint yang Anda butuhkan untuk konektor kustom Anda.

Langkah 5: Uji konektor kustom Anda

Setelah Anda mendefinisikan endpoint Anda, Anda dapat menguji konektor kustom Anda dengan mengklik tab "Test". Di sini, Anda dapat memasukkan data sampel untuk permintaan Anda dan melihat respons yang dikembalikan oleh API Gateway Anda.

Gambar konektor kustom baru 4

Langkah 6: Simpan konektor kustom Anda

Setelah Anda mendefinisikan semua endpoint dan menguji konektor Anda, klik tombol "Create connector" untuk menyimpan perubahan Anda.

Konektor kustom Anda untuk Apache APISIX API Gateway sekarang siap digunakan di Power Apps Anda. Anda dapat menggunakannya untuk membangun aplikasi kustom di bagian selanjutnya yang berinteraksi dengan endpoint API Gateway Anda.

Gambar konektor kustom baru 5

Membuat Power App baru

Sekarang kita membangun aplikasi seluler baru dengan satu halaman yang mengambil daftar produk dari endpoint APISIX API Gateway menggunakan konektor kustom yang kita buat di bagian sebelumnya.

Langkah 1: Buat aplikasi baru untuk Produk

Untuk memulai, masuk ke portal Power Apps dan buat aplikasi baru dengan memilih "Create an app". Pilih opsi "Phone layout" untuk membuat aplikasi seluler dan berikan nama untuk aplikasi Anda.

Langkah 2: Tambahkan sumber data

Di tab "Data", tambahkan konektor kustom Apache APISIX API Gateway Anda sebagai sumber data. Ini akan memungkinkan aplikasi Anda untuk berinteraksi dengan endpoint API Gateway yang didefinisikan dalam konektor kustom Anda.

Langkah 3: Desain antarmuka pengguna Anda

Di tab "Canvas", desain antarmuka pengguna untuk aplikasi Anda. Anda dapat menambahkan berbagai kontrol UI seperti tombol, label, galeri, dan formulir untuk membuat antarmuka yang ramah pengguna dan interaktif. Dalam contoh ini, kami menampilkan daftar produk dengan nama dan harganya.

Langkah 4: Definisikan tindakan dan logika

Di tab "Action", definisikan tindakan yang harus dilakukan aplikasi Anda ketika pengguna berinteraksi dengan kontrol UI. Misalnya, Anda mungkin mendefinisikan tindakan untuk mengambil semua produk dari API Gateway Anda, menampilkannya dalam galeri, dan menambahkan fungsi pencarian.

Gambar Power app baru 1

Langkah 5: Uji aplikasi Anda

Setelah Anda mendefinisikan tindakan dan logika untuk aplikasi Anda, Anda dapat mengujinya dengan mengklik tombol "Preview". Di sini, Anda dapat berinteraksi dengan kontrol UI dan melihat data yang diambil dari API Gateway Anda.

Langkah 6: Publikasikan aplikasi Anda

Setelah Anda menguji aplikasi Anda, Anda dapat mempublikasikannya untuk membuatnya tersedia bagi pengguna Anda. Anda dapat mempublikasikan aplikasi Anda ke berbagai platform seperti iOS, Android, dan Windows.

Langkah selanjutnya

Dalam artikel ini, Anda belajar cara mendeskripsikan API dan mendefinisikan konektor kustom Apache APISIX. Juga, kami membuat aplikasi seluler dengan Power Apps yang menggunakan API Gateway dengan konektor kustomnya. Konektor kustom kami digunakan dengan cara yang sama seperti konektor yang dikelola Microsoft. Ini berarti Anda dapat memanfaatkan konektor dalam Logic App, Power Automate juga. Jadi, silakan mencoba dan lihat seberapa banyak yang dapat Anda capai dengan Power Platform dan Apache APISIX.

Sumber daya terkait

Konten yang direkomendasikan

Komunitas

🙋 Bergabunglah dengan Komunitas Apache APISIX 🐦 Ikuti kami di Twitter 📝 Temukan kami di Slack

Tags: