Cara Membangun Backend untuk NativeScript?
Dalam tutorial ini, Anda akan belajar cara membangun backend untuk NativeScript menggunakan Back4app, sebuah platform sumber terbuka yang menyederhanakan pengembangan backend untuk aplikasi mobile.
Kami akan membahas integrasi fitur-fitur penting Back4app—seperti manajemen database, Fungsi Cloud Code, endpoint api REST dan GraphQL, otentikasi pengguna, dan kueri waktu nyata (Kueri Langsung)—untuk membuat backend yang aman dan dapat diskalakan untuk aplikasi NativeScript Anda.
Anda juga akan menemukan bagaimana Back4app secara drastis mengurangi waktu pengaturan dibandingkan dengan konfigurasi server dan database manual.
Kami akan menjelajahi mekanisme keamanan lanjutan, penjadwalan tugas dengan Pekerjaan Cloud, dan menggunakan webhook untuk terhubung dengan layanan pihak ketiga.
Pada akhir panduan ini, Anda akan memiliki backend yang fleksibel yang memanfaatkan NativeScript Core, yang mendukung solusi mobile lintas platform NativeScript.
Dengan fondasi ini, Anda akan siap untuk mengintegrasikan logika kustom Anda sendiri atau API eksternal sesuai kebutuhan. Ini akan menjadi langkah besar menuju pengembangan aplikasi NativeScript yang siap produksi.
- Akun Back4app dan proyek Back4app baru Memulai dengan Back4app. Jika Anda tidak memiliki akun, Anda dapat membuat satu secara gratis. Ikuti panduan di atas untuk menyiapkan proyek Anda.
- Lingkungan pengembangan NativeScript dasar Anda dapat menyiapkannya menggunakan NativeScript CLI atau alur kerja lain yang diinginkan. Panduan Memulai NativeScript.
- Node.js (versi 14 atau lebih tinggi) terinstal Anda akan memerlukan Node.js untuk menginstal paket npm dan menjalankan NativeScript CLI. Menginstal Node.js
- Keterampilan dalam JavaScript dan NativeScript Core Dokumentasi Resmi NativeScript. Jika Anda baru mengenal NativeScript, tinjau dokumen resmi atau tutorial pemula sebelum memulai.
Pastikan Anda memiliki semua prasyarat ini sebelum Anda mulai. Memiliki proyek Back4app Anda yang disiapkan dan lingkungan NativeScript lokal Anda yang siap akan membantu Anda mengikuti dengan lebih mudah.
Langkah pertama dalam membangun backend NativeScript Anda di Back4app adalah membuat proyek baru. Jika Anda belum melakukannya, ikuti langkah-langkah ini:
- Masuk ke akun Back4app Anda.
- Klik tombol “Aplikasi Baru” di dasbor Back4app Anda.
- Beri nama aplikasi Anda (misalnya, “NativeScript-Backend-Tutorial”).

Setelah membuat proyek, Anda akan melihatnya terdaftar di dasbor Back4app Anda. Proyek ini akan menjadi dasar untuk semua konfigurasi backend yang dibahas dalam tutorial ini.
Back4app menggunakan Platform Parse untuk menangani data Anda, fungsionalitas waktu nyata, otentikasi pengguna, dan lainnya. Untuk menghubungkan aplikasi NativeScript Anda ke Back4app, instal paket parse npm dan inisialisasi dengan kredensial yang Anda dapatkan dari dasbor Back4app Anda.
Ambil Kunci Parse Anda: Di dasbor Back4app Anda, pergi ke bagian “Pengaturan Aplikasi” atau “Keamanan & Kunci” aplikasi Anda. Cari ID Aplikasi, Kunci JavaScript, dan URL Server Parse (dalam format https://parseapi.back4app.com).

Instal Parse SDK:
Kemudian, inisialisasi Parse dalam file konfigurasi atau file entri utama Anda (misalnya, app.js). Sebagai contoh, Anda mungkin membuat file bernama parseConfig.js dalam proyek berbasis NativeScript:
Setiap kali Anda perlu mengakses Parse di aplikasi NativeScript Anda, cukup impor file ini. Dengan menyelesaikan langkah ini, Anda telah membangun koneksi yang aman antara frontend NativeScript Anda dan backend Back4app, menyederhanakan operasi data.
Dengan proyek Back4app Anda siap dan Parse SDK terintegrasi, Anda dapat menyimpan dan mengambil data dari aplikasi NativeScript Anda. Di bawah ini adalah contoh menggunakan Parse.Object kelas untuk menyimpan dan mengambil daftar item:
Anda juga dapat menggunakan REST API Back4app jika Anda lebih suka panggilan HTTP langsung:
Atau gunakan GraphQL:
Fleksibilitas ini membuatnya nyaman untuk membangun fitur backend untuk aplikasi NativeScript Anda melalui Parse SDK, REST, atau endpoint API GraphQL.
Secara default, Parse dapat secara otomatis membuat skema secara langsung, atau Anda dapat mendefinisikan kelas dan tipe data Anda di dasbor Back4app:
- Pergi ke bagian “Database” di dasbor Back4app Anda.
- Buat kelas baru (misalnya, “Task”) dan tambahkan kolom seperti title (String) dan isCompleted (Boolean).

Back4app mendukung tipe data seperti String, Number, Boolean, Object, Date, File, Pointer, Array, Relation, GeoPoint, dan Polygon. Anda dapat membiarkan Parse membuat kolom ini saat Anda pertama kali menyimpan objek atau mendefinisikannya untuk kontrol lebih.

Menggunakan AI Agent Back4app juga dapat membantu Anda menghasilkan skema secara otomatis:
- Buka AI Agent di Dasbor Aplikasi Anda.
- Deskripsikan model data yang Anda inginkan (misalnya, “Silakan buat kelas Tugas baru untuk aplikasi seluler dengan bidang isCompleted dan dueDate.”).
- Biarkan agen membuat skema secara otomatis.

Jika Anda menginginkan data relasional—seperti sebuah Kategori objek yang menunjuk ke beberapa Tugas item—gunakan Pointers atau Relations di Parse:
Pendekatan ini membantu Anda mengambil data lengkap untuk sebuah Tugas dan Kategori terkait dalam satu query.
Untuk pembaruan waktu nyata, aktifkan Live Queries di bawah Pengaturan Server di dasbor Back4app. Pengembang NativeScript dapat berlangganan untuk perubahan dalam kelas tertentu. Perbarui pengaturan Parse Anda untuk menyertakan URL server Live Query:
Dan kemudian berlangganan ke acara waktu nyata:
Langganan ini secara otomatis memperbarui UI Anda setiap kali sebuah Task ditambahkan, dimodifikasi, atau dihapus—sempurna untuk aplikasi NativeScript kolaboratif secara langsung.
Back4app menggabungkan Access Control Lists (ACLs) dan Class-Level Permissions (CLPs) untuk melindungi data Anda. Model keamanan ini memungkinkan Anda mengontrol akses baca/tulis baik di tingkat kelas maupun objek.

Sebuah ACL menetapkan izin untuk setiap objek. Misalnya, untuk memberikan akses baca dan tulis hanya kepada pemilik:
Ini memastikan hanya pengguna yang ditentukan yang dapat memodifikasi atau membaca objek tersebut.

CLP menetapkan izin default untuk seluruh kelas:
- Buka Database di Back4app dan pilih kelas yang relevan.
- Akses Izin Tingkat Kelas tab.
- Sesuaikan izin untuk publik, pengguna terautentikasi, atau peran tertentu sesuai kebutuhan.

Menggabungkan ACL dan CLP menawarkan model keamanan yang kuat untuk aplikasi NativeScript. Untuk informasi lebih lanjut, lihat Pedoman Keamanan Aplikasi.
Kode Cloud memungkinkan Anda menjalankan kode JavaScript kustom di sisi server, sehingga Anda tidak perlu memelihara infrastruktur sendiri. Ini ideal untuk menambahkan logika canggih atau integrasi hanya di server dalam backend NativeScript Anda.
Anda biasanya menempatkan Cloud Code Anda (fungsi JavaScript, pemicu, dan modul NPM yang diperlukan) di dalam file main.js . Kemudian Anda menyebarkannya ke Back4app, dan ia berjalan di lingkungan Parse Server tanpa konfigurasi server tambahan.
Contoh Struktur main.js:
Anda dapat menginstal dan menggunakan paket NPM seperti axios untuk permintaan HTTP. Pendekatan ini memungkinkan berbagai integrasi, dari gerbang pembayaran hingga API eksternal, semua di balik keamanan aplikasi Back4app Anda.
- Logika Bisnis: Perhitungan otomatis, transformasi data, atau pembaruan status.
- Validasi Data: Memastikan bidang yang diperlukan ada sebelum menyimpan.
- Pemicu: Menjalankan kode saat data dibuat, diperbarui, atau dihapus.
- Integrasi: Menghubungkan dengan layanan eksternal untuk pembayaran, analitik, atau pesan.
- Penegakan Keamanan: Memvalidasi data yang masuk atau peran pengguna sebelum melanjutkan.
Berikut adalah fungsi sederhana yang menghitung panjang teks:
Mengdeploy melalui Back4app CLI:
- Instal CLI:
Untuk Windows, unduh file b4a.exe dari halaman rilis.}]},{
Mengdeploy melalui Dashboard:
- Deploy kode cloud Anda:
- Konfigurasi kunci akun Anda:
- Pergi ke Cloud Code > Functions di dasbor Anda.
- Tempel kode fungsi Anda ke main.js.
- Klik Deploy.

Dari aplikasi NativeScript Anda menggunakan Parse SDK:
Anda juga dapat memanggilnya menggunakan REST atau GraphQL:
Ini memberi Anda cara yang fleksibel untuk mengintegrasikan logika sisi server ke dalam aplikasi seluler berbasis NativeScript Anda.
Back4app menggunakan kelas Parse User untuk menangani autentikasi, yang mencakup hashing kata sandi, token sesi, dan lainnya. Ini menghilangkan banyak kompleksitas yang terkait dengan pengelolaan akun pengguna.
Di aplikasi NativeScript Anda, Anda dapat membuat pengguna baru:
Contoh REST mungkin terlihat seperti:
Setelah masuk, Parse memberikan token sesi kepada pengguna. Untuk memeriksa pengguna yang saat ini masuk:
Keluar sangatlah sederhana:
Parse juga terintegrasi dengan penyedia OAuth seperti Google atau Facebook. Pengaturan bervariasi per penyedia, jadi lihat Masuk Dengan Apple dan Lainnya untuk detailnya. Misalnya, dengan Facebook:
Aktifkan fitur ini di dasbor Back4app Anda:
- Navigasikan ke Pengaturan Email di aplikasi Back4app Anda.
- Aktifkan verifikasi email dan reset kata sandi.
- Konfigurasikan template email dan alamat “Dari” Anda.
Back4app mendukung manajemen berkas melalui kelas Parse.File. Di NativeScript, Anda dapat mengunggah gambar atau dokumen dengan cara yang sama:
Anda dapat mengambil URL berkas dari objek yang disimpan:
Parse Server memungkinkan Anda mengonfigurasi keamanan unggahan berkas:
Ini memastikan Anda dapat membatasi atau mengizinkan unggahan berkas berdasarkan preferensi keamanan Anda.
Pekerjaan Cloud membantu Anda mengotomatiskan tugas rutin, seperti menghapus catatan yang sudah tidak relevan atau mengirimkan notifikasi. Misalnya:
- Terapkan pekerjaan ini melalui CLI atau dasbor.
- Di Dasbor Back4app > Pengaturan Server > Pekerjaan Latar Belakang, jadwalkan untuk dijalankan setiap hari atau pada interval yang Anda pilih.

Webhook memungkinkan Anda mengirim permintaan HTTP ke layanan eksternal ketika peristiwa tertentu terjadi di aplikasi Anda—seperti catatan baru atau pendaftaran pengguna. Ini dapat digunakan untuk mengintegrasikan dengan Slack, gerbang pembayaran, atau platform analitik.
- Pergi ke konfigurasi Webhook di dasbor Back4app Anda dan pilih Tambahkan Webhook.
- Tambahkan URL endpoint Anda (misalnya, https://your-service.com/webhook).
- Konfigurasi pemicu untuk kelas atau peristiwa tertentu.

Anda juga dapat mendefinisikan webhook dalam Cloud Code atau memanggil API eksternal langsung dalam pemicu seperti beforeSave atau afterSave.

Aplikasi Back4app Admin App adalah antarmuka yang berfokus pada model dan ramah pengguna untuk manajemen data. Ini membantu tim atau pengguna non-teknis melakukan operasi CRUD, membuat dasbor kustom, dan mengelola tugas tingkat perusahaan tanpa menulis kode.
- Di Dasbor Aplikasi, klik Lainnya > Aplikasi Admin.
- Aktifkan Aplikasi Admin.

Buat pengguna admin pertama (username/password). Pengaturan ini menambahkan peran B4aAdminUser dan kelas terkait (B4aSetting, B4aMenuItem, dll.) ke skema Anda.

Pilih subdomain, lalu masuk dengan kredensial admin baru Anda:


Portal ini memungkinkan manipulasi data dengan cepat tanpa meninggalkan antarmuka grafis—solusi yang hebat untuk berkolaborasi dengan anggota tim yang mungkin tidak akrab dengan pemrograman.
Dengan mengikuti panduan ini, Anda telah belajar cara membangun backend untuk NativeScript menggunakan Back4app dan:
- Membuat backend yang aman untuk aplikasi NativeScript Anda.
- Mengonfigurasi database dengan kelas, skema, dan hubungan.
- Menerapkan kueri waktu nyata untuk pembaruan langsung.
- Mengamankan data Anda dengan ACL dan CLP.
- Memperluas fungsionalitas dengan Cloud Code.
- Mengatur otentikasi untuk pendaftaran pengguna, login, dan token sesi.
- Mengelola unggahan file dan pengambilan melalui Parse File.
- Menjadwalkan Cloud Jobs untuk tugas otomatis dan berkala.
- Membuat Webhooks untuk integrasi pihak ketiga.
- Menggunakan Panel Admin Back4app untuk manajemen data tanpa kode.
Langkah-langkah ini membentuk dasar yang kuat untuk membangun aplikasi seluler sumber terbuka dan lintas platform dengan NativeScript Core. Teruslah menjelajahi fitur-fitur lanjutan, masukkan lebih banyak titik akhir API, atau integrasikan logika kustom Anda sendiri untuk menyesuaikan backend dengan kebutuhan tepat aplikasi Anda.
- Skalakan aplikasi NativeScript Anda dengan mengoptimalkan kinerja, caching, dan aturan keamanan.
- Jelajahi manajemen pengguna yang lebih canggih seperti izin berbasis peran.
- Periksa dokumentasi resmi Back4app untuk panduan mendalam tentang keamanan, log, dan kinerja.
- Eksperimen dengan integrasi dunia nyata seperti pembayaran atau alat analitik.
Selamat coding, dan nikmati alur kerja pengembangan yang efisien yang disediakan oleh Back4app!
