Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris
NocoBase menyediakan APIClient yang dibangun di atas Axios. Anda bisa menggunakannya untuk membuat permintaan HTTP dari mana saja Anda bisa mendapatkan Context.
Lokasi umum di mana Anda bisa mendapatkan Context meliputi:
app.contextengine.contextplugin.contextmodel.contextctx.api.request() adalah metode yang paling sering digunakan untuk membuat permintaan. Parameter dan nilai kembaliannya sama persis dengan axios.request().
Penggunaan Dasar
Anda bisa langsung menggunakan konfigurasi permintaan Axios standar:
ctx.api.axios adalah sebuah instans AxiosInstance. Melalui instans ini, Anda dapat mengubah konfigurasi default global atau menambahkan interceptor permintaan.
Mengubah Konfigurasi Default
Untuk konfigurasi yang lebih lengkap, lihat Konfigurasi Default Axios.
Interceptor dapat memproses permintaan sebelum dikirim atau respons setelah diterima. Misalnya, untuk menambahkan header permintaan secara seragam, melakukan serialisasi parameter, atau menampilkan notifikasi kesalahan yang terpadu.
Berikut adalah header permintaan kustom yang didukung oleh NocoBase Server, yang dapat digunakan untuk skenario multi-aplikasi, internasionalisasi, multi-peran, atau multi-autentikasi.
| Header | Deskripsi |
|---|---|
X-App | Menentukan aplikasi yang sedang diakses dalam skenario multi-aplikasi |
X-Locale | Bahasa saat ini (misalnya: zh-CN, en-US) |
X-Hostname | Hostname klien |
X-Timezone | Zona waktu klien (misalnya: +08:00) |
X-Role | Peran saat ini |
X-Authenticator | Metode autentikasi pengguna saat ini |
💡 Tips
Header permintaan ini biasanya disuntikkan secara otomatis oleh interceptor dan tidak perlu diatur secara manual. Anda hanya perlu menambahkannya secara manual dalam skenario khusus (seperti lingkungan pengujian atau skenario multi-instans).
Dalam komponen React, Anda bisa mendapatkan objek konteks melalui useFlowContext() dan kemudian memanggil ctx.api untuk membuat permintaan.
useRequest dari ahooksDalam pengembangan nyata, Anda dapat menggunakan Hook useRequest yang disediakan oleh ahooks untuk menangani siklus hidup dan status permintaan dengan lebih mudah.
Pendekatan ini membuat logika permintaan lebih deklaratif, secara otomatis mengelola status pemuatan, penanganan kesalahan, dan logika penyegaran, sehingga sangat cocok untuk digunakan dalam komponen.