Quickstarters

Bagaimana Membangun Backend untuk Ionic?

35min

Pendahuluan

Dalam tutorial ini, Anda akan belajar bagaimana membangun backend lengkap untuk aplikasi Ionic menggunakan Back4App.

Kami akan membahas manajemen database, Fungsi Cloud Code, API REST dan GraphQL, otentikasi pengguna, penanganan file, dan banyak lagi.

Tujuan kami adalah untuk menunjukkan kepada Anda cara membangun backend untuk Ionic yang aman, dapat diskalakan, dan mudah untuk dipelihara.

Kami akan menggunakan lingkungan intuitif Back4App untuk menyederhanakan pengaturan sisi server, menghindarkan Anda dari konfigurasi manual server atau database.

Anda akan belajar alat-alat penting seperti penjadwalan tugas dengan Cloud Jobs, menerapkan aturan keamanan yang lebih canggih, dan mengintegrasikan webhook dengan layanan lain.

Pada akhir tutorial, Anda akan siap untuk mengembangkan backend dasar ini menjadi sistem siap produksi untuk aplikasi Ionic Anda.

Prasyarat

  • Akun Back4App dan proyek Back4App baru Memulai dengan Back4App. Jika Anda tidak memiliki akun, buat satu secara gratis dan ikuti panduan di atas untuk mengatur proyek Anda.
  • Lingkungan pengembangan Ionic dasar Pastikan Anda telah menginstal Ionic CLI dan dapat membuat serta menjalankan aplikasi Ionic.
  • Node.js (versi 14 atau lebih tinggi) terinstal Unduh Node.js untuk mengelola ketergantungan dan membangun proyek Anda.
  • Pemahaman tentang JavaScript/TypeScript dan konsep Ionic Dokumentasi Resmi Ionic. Pemahaman yang baik tentang struktur, komponen, dan hook siklus hidup Ionic akan sangat membantu.

Langkah 1 – Membuat Proyek Baru di Back4App dan Menghubungkan

  1. Masuk ke akun Back4App Anda.
  2. Buat aplikasi baru menggunakan tombol “Aplikasi Baru” di dasbor Back4App Anda.
  3. Beri nama aplikasi Anda (misalnya, “Ionic-Backend-Tutorial”).
Document image


Proyek Back4App ini adalah dasar untuk backend Anda. Berbeda dengan menggunakan SDK Parse sisi klien, tutorial ini akan menunjukkan cara melakukan panggilan melalui REST dan GraphQL dari aplikasi Ionic Anda.

Mengambil Kredensial Anda

  1. Di dasbor Back4App, pergi ke App Settings atau Security & Keys.
  2. Catat Application ID, REST API Key, dan GraphQL Endpoint. Anda akan memerlukan ini untuk mengirim permintaan dari aplikasi Ionic Anda.

Langkah 2 – Menyiapkan Database

Memiliki database yang terstruktur dengan baik adalah tulang punggung setiap aplikasi. Dasbor Back4App memudahkan untuk merancang model data dan menangani hubungan.

1. Membuat Model Data

  1. Pergi ke bagian Database di dasbor Back4App Anda.
  2. Buat kelas baru (misalnya, “Todo”) dan tambahkan kolom (misalnya, title sebagai String, isCompleted sebagai Boolean).
Buat Kelas Baru
Buat Kelas Baru


2. Membuat Model Data Menggunakan Agen AI

  • Buka AI Agent dari dasbor Back4App Anda.
  • Deskripsikan skema yang Anda inginkan, seperti “Buat kelas Todo dengan bidang untuk judul (String) dan isCompleted (Boolean).”
  • AI Agent akan menghasilkan skema secara otomatis.
Document image


3. Membaca dan Menulis Data menggunakan REST API

Dari kode Ionic Anda, Anda dapat mengeksekusi permintaan HTTP. Misalnya, untuk membuat sebuah Todo:

Bash


Untuk mengambil semua Todos:

Bash


Anda dapat mengintegrasikan panggilan ini menggunakan fetch, Axios, atau pustaka klien HTTP lainnya dalam file layanan atau komponen aplikasi Ionic Anda.

4. Membaca dan Menulis Data menggunakan GraphQL API

Demikian pula, Anda dapat mengirim mutasi dan kueri GraphQL dari aplikasi Ionic Anda. Misalnya, untuk membuat Todo baru:

GraphQL


Contoh panggilan REST atau GraphQL dapat ditempatkan dalam file penyedia/layanan dalam struktur Ionic Anda, kemudian dipanggil dari halaman Anda.

5. Bekerja dengan Kueri Langsung (Opsional)

Kueri Langsung memberikan pembaruan waktu nyata pada data aplikasi Anda, meskipun mereka memerlukan SDK Parse atau pendekatan langganan khusus. Jika Anda memerlukan data waktu nyata, Anda dapat mengaktifkan Kueri Langsung dari pengaturan server Back4App Anda. Anda biasanya akan menggunakan koneksi WebSocket untuk memantau perubahan dalam kelas Anda. Namun, untuk panggilan berbasis HTTP standar, Anda dapat secara berkala mengkueri titik akhir REST atau GraphQL.

Langkah 3 – Menerapkan Keamanan dengan ACL dan CLP

Ikhtisar Singkat

ACL (Daftar Kontrol Akses) memungkinkan Anda mengatur izin baca/tulis pada objek individu. CLP (Izin Tingkat Kelas) memungkinkan Anda mengelola akses yang lebih luas di tingkat kelas. Fitur-fitur ini sangat penting untuk melindungi data pribadi dan memastikan hanya pengguna yang berwenang yang dapat memodifikasi informasi.

Mengatur Izin Tingkat Kelas

  1. Di dasbor Back4App Anda, pergi ke Database > Izin Tingkat Kelas.
  2. Konfigurasikan default kelas Anda (misalnya, hanya pengguna yang terautentikasi yang dapat membuat Todo baru).

Mengonfigurasi ACL

Saat membuat atau memperbarui catatan, Anda dapat mengirimkan ACL melalui REST:

Bash


Untuk informasi lebih lanjut, lihat Pedoman Keamanan Aplikasi.

Langkah 4 – Menulis Fungsi Cloud Code

Mengapa Cloud Code

Cloud Code memungkinkan Anda untuk menjalankan JavaScript sisi server untuk tugas seperti validasi data, pemicu, atau integrasi. Anda dapat membuat endpoint kustom untuk memusatkan logika, yang sangat berguna jika Anda ingin menjaga kode tetap terpisah dari klien.

Contoh Fungsi dan Pemicu

Di main.js Anda di sisi server (Back4App), Anda dapat menulis:

JS


Terapkan ini melalui Back4App CLI atau di bagian Cloud Code dari dasbor.

Memanggil Cloud Code dari Ionic

Anda dapat mengirim permintaan POST:

Bash

JS


Terapkan ini melalui Back4App CLI atau di bagian Cloud Code dari dasbor.

Anda akan mendapatkan respons JSON yang berisi data yang dikembalikan atau pesan kesalahan.

Modul NPM

Anda dapat menginstal paket seperti axios di lingkungan Cloud Code Anda untuk mengintegrasikan layanan pihak ketiga. Sertakan mereka dalam main.js:

JS


Terapkan dan panggil dengan cara yang sama seperti Anda akan melakukan fungsi Cloud Code lainnya.

Langkah 5 – Mengonfigurasi Autentikasi

Mengaktifkan Autentikasi Pengguna

Pendaftaran dan login pengguna dapat dilakukan dengan panggilan REST ke kelas User. Misalnya, untuk mendaftar:

Bash


Login

Bash


Jika berhasil, Anda akan menerima sessionToken. Simpan dengan aman dan sertakan dalam header permintaan di masa mendatang untuk operasi yang terautentikasi.

Login Sosial

Anda dapat mengonfigurasi login sosial (seperti Google atau Facebook) dengan mengatur alur OAuth melalui Back4App atau dengan menggunakan penyedia eksternal. Lihat Dokumentasi Login Sosial untuk langkah-langkah yang lebih rinci.

Langkah 6 – Menangani Penyimpanan File

Mengatur Penyimpanan File

Back4App menawarkan penyimpanan file yang aman. Anda dapat melampirkan file ke objek atau menyimpannya secara independen. Misalnya:

Bash


Respon akan mencakup URL file yang dapat Anda simpan dalam sebuah kelas:

Bash


Pertimbangan Keamanan

Anda dapat mengaktifkan aturan keamanan file di Pengaturan Server Back4App untuk memerlukan autentikasi atau membatasi unggahan file ke peran tertentu.

Langkah 7 – Verifikasi Email dan Reset Kata Sandi

Mengapa Verifikasi Itu Penting

Verifikasi email memastikan keabsahan email pengguna. Reset kata sandi menyediakan cara yang aman untuk memulihkan kredensial yang hilang. Ini membantu menjaga kepercayaan dan pengelolaan pengguna yang tepat dalam aplikasi Ionic Anda.

Konfigurasi Dasbor Back4App

  1. Pergi ke Pengaturan Aplikasi > Pengaturan Email.
  2. Aktifkan Verifikasi Email.
  3. Sesuaikan template email verifikasi dan reset kata sandi.

Langkah 8 – Menjadwalkan Tugas dengan Pekerjaan Cloud

Apa yang Dilakukan Pekerjaan Cloud

Pekerjaan Cloud memungkinkan Anda untuk menjadwalkan tugas berulang seperti pembersihan data atau mengirim email ringkasan. Anda menuliskannya di main.js:

JS


Setelah penyebaran:

  1. Pergi ke Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang.
  2. Jadwalkan cleanupOldTodos untuk dijalankan setiap hari.
Menjadwalkan Pekerjaan Cloud
Menjadwalkan Pekerjaan Cloud


Langkah 9 – Mengintegrasikan Webhooks

Webhooks memungkinkan Anda mengirim data ke layanan eksternal ketika peristiwa tertentu terjadi dalam proyek Back4App Anda. Jika aplikasi Ionic Anda perlu memicu tindakan di Stripe atau Slack setelah membuat catatan baru, Anda dapat menggunakan webhooks untuk mengotomatiskan itu.

  1. Pergi ke Lebih > WebHooks di dasbor Back4App Anda.
  2. Tambahkan Webhook baru dan atur endpoint-nya (misalnya, https://your-service.com/webhook-endpoint).
  3. Pilih peristiwa (misalnya, “Setelah Simpan” di Todo kelas).
Menambahkan Webhook
Menambahkan Webhook


Anda juga dapat memulai permintaan keluar dari pemicu Cloud Code di main.js menggunakan pustaka HTTP standar.

Langkah 10 – Menjelajahi Panel Admin Back4App

The Back4App Admin App adalah antarmuka yang lebih sederhana untuk pemangku kepentingan non-teknis. Ini menyediakan cara yang mudah untuk melakukan operasi CRUD pada kelas Anda tanpa harus masuk ke Parse Dashboard utama.

Mengaktifkan Admin App

  1. Di dashboard, pergi ke More > Admin App.
  2. Klik Enable Admin App dan buat pengguna admin.
  3. Pilih subdomain untuk mengakses antarmuka admin Anda.
Aktifkan Admin App
Aktifkan Admin App

Document image


Panel ini membantu Anda mengelola data tanpa menulis kueri, menjadikannya ideal untuk klien atau anggota tim yang lebih suka antarmuka grafis.

Kesimpulan

Dengan menyelesaikan panduan ini tentang cara membangun backend untuk Ionic, Anda telah:

  • Membuat backend yang aman di Back4App dengan model data dan hubungan yang kuat.
  • Mengintegrasikan dengan REST dan GraphQL APIs untuk membaca dan menulis data dari aplikasi Ionic Anda.
  • Menerapkan keamanan dengan ACL dan CLP.
  • Menyebarkan Cloud Code untuk logika dan pemicu kustom.
  • Mengonfigurasi otentikasi pengguna dan penyimpanan file.
  • Menyiapkan Cloud Jobs untuk penjadwalan tugas.
  • Memanfaatkan webhook untuk integrasi eksternal.
  • Menjelajahi Panel Admin untuk menyederhanakan administrasi data.

Dengan fondasi ini, aplikasi Ionic Anda dapat berkembang menjadi platform siap produksi. Tambahkan lebih banyak logika, sambungkan API pihak ketiga, atau sesuaikan aturan keamanan untuk mencocokkan kasus penggunaan Anda.

Langkah Selanjutnya

  • Tingkatkan build produksi Anda dengan menerapkan caching, akses berbasis peran, dan pemantauan kinerja.
  • Integrasikan fitur canggih seperti Live Queries waktu nyata atau otentikasi multi-faktor.
  • Konsultasikan dokumen resmi Back4App untuk eksplorasi mendalam tentang analitik, log, dan penyetelan kinerja.
  • Jelajahi tutorial lain yang menunjukkan aplikasi chat, integrasi IoT, atau fitur berbasis lokasi yang digabungkan dengan layanan backend Back4App yang kuat.