Dukungan API di Azure Static Web Apps dengan Azure Functions
Aplikasi web front end sering kali memanggil balik API untuk data dan layanan. Secara default, Azure Static Web Apps menyediakan titik akhir API tanpa server bawaan melalui Azure Functions.
API Azure Functions di Static Web Apps tersedia dalam dua konfigurasi yang mungkin tergantung pada paket hosting:
Fungsi terkelola: Secara default, API aplikasi web statis adalah aplikasi Azure Functions yang dikelola dan disebarkan oleh Azure Static Web Apps yang terkait dengan beberapa batasan.
Bawa fungsi Anda sendiri: Secara opsional, Anda dapat menyediakan aplikasi Azure Functions yang ada dari jenis paket apa pun, yang mencakup semua fitur Azure Functions. Dengan konfigurasi ini, Anda bertanggung jawab untuk menangani penyebaran terpisah untuk aplikasi Functions.
Tabel berikut membandingkan perbedaan antara menggunakan fungsi terkelola dan yang sudah ada.
Fitur | Fungsi Terkelola | Menggunakan Fungsi milik Anda |
---|---|---|
Akses ke pemicu dan pengikatan Azure Functions | Khusus HTTP | Semua |
Runtime Azure Functions yang didukung 1 | Node.js 12 Node.js 14 Node.js 16 Node.js 18 .NET Core 3.1 .NET 6.0 .NET 7.0 Python 3.8 Python 3.9 Python 3.10 |
Semua |
Paket hosting Azure Functions yang didukung | Consumption | Consumption Premium Khusus |
Keamanan terintegrasi dengan akses langsung ke autentikasi pengguna dan data otorisasi berbasis peran | ✔ | ✔ |
Integrasi perutean yang membuat /api rute tersedia untuk aplikasi web dengan aman tanpa memerlukan aturan CORS kustom. |
✔ | ✔ |
Fungsi terdistribusi (pratinjau) untuk distribusi global dinamis komputasi backend. | ✔ | ✕ |
Model pemrograman Fungsi Tahan Lama | ✕ | ✔ |
Identitas terkelola | ✕ | ✔ |
Manajemen token Autentikasi dan Otorisasi Azure App Service | ✕ | ✔ |
Fungsi API yang tersedia di luar Azure Static Web Apps | ✕ | ✔ |
Referensi Key Vault | ✕ | ✔ |
1 Untuk menentukan versi runtime dalam fungsi terkelola, tambahkan file konfigurasi ke aplikasi frontend Anda dan atur apiRuntime
properti . Dukungan tunduk pada kebijakan dukungan runtime bahasa azure Functions.
Opsi API untuk Static Web Apps mencakup layanan Azure berikut:
Lihat gambaran umum API untuk informasi selengkapnya.
Catatan
Fungsi terdistribusi tersedia dengan fungsi terkelola. Fungsi terdistribusi secara otomatis mendistribusikan fungsi terkelola Anda ke wilayah beban permintaan tinggi.
Konfigurasi
Titik akhir API tersedia untuk aplikasi web melalui api
rute.
Fungsi terkelola | Membawa fungsi milik Anda |
---|---|
/api Saat rute diperbaiki, Anda memiliki kontrol atas lokasi folder kode sumber dari aplikasi fungsi terkelola. Anda dapat mengubah lokasi ini dengan mengedit file YAML alur kerja yang terletak di folder .github/workflows repositori Anda. |
Permintaan ke /api rute dikirim ke aplikasi Azure Functions yang sudah ada. |
Pemecahan masalah dan log
Log hanya tersedia jika Anda menambahkan Application Insights.
Fungsi terkelola | Membawa fungsi milik Anda |
---|---|
Aktifkan pengelogan dengan mengaktifkan Application Insights di aplikasi web statis Anda. | Aktifkan pengelogan dengan mengaktifkan Application Insights di aplikasi Azure Functions Anda. |
Kendala
Selain batasan API Static Web Apps, pembatasan berikut juga berlaku untuk API Azure Functions:
Fungsi terkelola | Membawa fungsi milik Anda |
---|---|
|
|