Bagaimana Membangun Backend untuk Play Framework?
Dalam tutorial ini, Anda akan belajar bagaimana membangun backend lengkap untuk Play Framework menggunakan Back4App.
Kami akan membahas fitur-fitur penting untuk backend server, termasuk pengaturan konfigurasi, manajemen database, Cloud Code Functions, REST dan GraphQL APIs, otentikasi pengguna, penyimpanan file, dan kueri waktu nyata.
Anda akan melihat bagaimana Back4App menyederhanakan proses pengaturan, penskalaan, dan pemeliharaan backend aplikasi web sambil memungkinkan Anda untuk fokus pada kode Play Framework Anda.
Dengan belajar bagaimana membangun backend untuk Play Framework dengan Back4App, Anda akan mengurangi waktu pengembangan dan meminimalkan masalah dev ops.
Anda juga akan menambahkan fitur-fitur kuat seperti login sosial, penjadwalan tugas (Cloud Jobs), dan webhook. Setelah Anda menyelesaikan ini, Anda dapat memperluas sistem menjadi solusi kelas produksi, mengintegrasikan fitur-fitur yang lebih canggih sesuai kebutuhan.
Ketika Anda selesai, Anda akan memiliki cetak biru yang solid untuk membuat aplikasi web Play Framework Anda yang berikutnya yang dapat diskalakan dan aman.
Anda akan siap untuk menyelami lebih dalam ke dalam peningkatan kinerja, integrasi, atau optimasi mode pengembangan untuk menangani tuntutan dunia nyata.
Untuk menyelesaikan tutorial ini, Anda akan membutuhkan:
- Akun Back4App dan proyek Back4App baru Memulai dengan Back4App. Jika Anda tidak memiliki akun, Anda dapat membuatnya secara gratis. Ikuti panduan di atas untuk menyiapkan proyek Anda.
- Lingkungan Play Framework yang berfungsi
- Pengetahuan dasar tentang Play Framework Rujuk ke Dokumentasi Play jika Anda perlu menyegarkan kembali dasar-dasar.
- Keterampilan dengan REST atau GraphQL Ini akan membantu Anda berinteraksi dengan Back4App, terutama jika Anda memutuskan untuk tidak menggunakan atau jika Anda tidak dapat menggunakan Parse SDK secara langsung.
Pastikan Anda memiliki prasyarat ini sebelum Anda mulai. Memiliki proyek Back4App Anda yang disiapkan dan lingkungan Play Framework Anda yang siap akan membantu Anda mengikuti dengan lancar.
Proyek Back4App yang baru adalah tulang punggung untuk backend Anda karena mengelola data aplikasi Anda, otentikasi, dan logika cloud. Apakah Anda sedang membangun prototipe kecil atau aplikasi web berskala besar, mudah untuk menghubungkan aplikasi Play Framework Anda ke proyek Back4App yang baru.
- Masuk ke akun Back4App Anda.
- Klik “Aplikasi Baru” di dasbor Back4App Anda.
- Beri nama aplikasi Anda, misalnya, “Play-Framework-Backend”.

Setelah dibuat, proyek baru Anda akan muncul di dasbor.
Back4App memanfaatkan Parse Server. Jika aplikasi Play Framework Anda berencana untuk berinteraksi dengan Back4App melalui Parse Java SDK, Anda dapat menambahkannya ke build.sbt jika diperlukan. Jika tidak, Anda dapat menggunakan endpoint REST atau GraphQL.
Ambil Kunci Parse Anda:
- Di dasbor Back4App Anda, buka Pengaturan Aplikasi atau Keamanan & Kunci untuk menemukan ID Aplikasi, Kunci API REST, Kunci JavaScript (jika menggunakan panggilan front-end), atau Kunci Klien, ditambah URL Server (biasanya https://parseapi.back4app.com).

Menggunakan Java/Parse SDK (Opsional):
Jika Anda ingin integrasi sisi server langsung menggunakan Parse SDK, tambahkan ketergantungan di build.sbt:
Kemudian, dalam kode Play Framework Anda, Anda dapat menginisialisasi Parse:
Anda mungkin menempatkan ini di Global.scala Anda atau memanggilnya dari titik inisialisasi yang sesuai. Ini mempersiapkan Anda untuk interaksi langsung dengan proyek Back4App Anda. Jika Anda mau, gunakan endpoint REST atau GraphQL untuk operasi data, terutama jika Anda ingin lebih banyak kontrol atas permintaan HTTP Anda atau jika Anda sedang membangun mikroservis.
Layanan penyimpanan data Back4App mendukung berbagai jenis data dan pembuatan skema dinamis. Ini memungkinkan Anda menyimpan data aplikasi Play Anda dengan sedikit kerepotan.
- Buka bagian “Database” di dasbor Back4App Anda.
- Buat kelas baru (misalnya, “Todo”) dan tambahkan kolom (misalnya, title sebagai String, isCompleted sebagai Boolean).
- Simpan untuk menyelesaikan skema database Anda.

Jika Anda ingin dengan cepat mendefinisikan struktur data Anda:
- Buka Agen AI di Dasbor Aplikasi Anda.
- Deskripsikan model data yang Anda inginkan dalam bahasa yang sederhana (misalnya, “Buat model ToDo yang sederhana.”).
- Agen akan menghasilkan skema untuk Anda secara otomatis.

Jika Anda memilih untuk menyertakan Parse Java SDK dalam aplikasi Play Framework Anda, Anda dapat menyimpan dan mengquery data:
Anda dapat mengirim permintaan HTTP dari pengontrol atau layanan Play Framework Anda:
Back4App juga menyediakan API GraphQL:
Ini sangat berguna jika Anda sedang membangun mikroservis atau ingin API yang fleksibel untuk klien front-end Anda.
Jika aplikasi web Anda membutuhkan data waktu nyata, aktifkan Kuery Langsung:
- Aktifkan Kuery Langsung di dasbor Back4App di bawah Pengaturan Server.
- Atur langganan Anda dalam kode. Jika menggunakan SDK Parse atau kode kustom, pastikan Anda mengonfigurasi liveQueryServerURL.
- Berlangganan untuk perubahan pada kelas seperti “Todo.”
Back4App menyediakan Daftar Kontrol Akses (ACL) untuk keamanan tingkat objek dan Izin Tingkat Kelas (CLP) untuk pembatasan yang lebih luas. Ini membantu menjaga backend server Anda tetap aman dan memastikan hanya operasi yang diizinkan yang terjadi.

Di bagian Database dari dasbor Back4App Anda:
- Pilih kelas (misalnya, “Todo”).
- Buka CLP untuk membatasi baca/tulis kepada pengguna yang terautentikasi, peran, atau publik.
- Konfigurasikan sesuai kebutuhan (misalnya, “Memerlukan Autentikasi” untuk setiap penulisan).
ACL melindungi objek individu. Misalnya, Anda dapat memastikan hanya pengguna tertentu yang dapat membaca atau menulis catatan tertentu. Jika Anda menggunakan Parse SDK dari kode Scala:
Cloud Code memungkinkan Anda menjalankan logika kustom di server Back4App, menambahkan aturan bisnis atau validasi sebelum atau setelah transaksi data. Anda tidak perlu menangani penyediaan server Anda sendiri atau memulai ulang mode pengembangan untuk menerapkan fungsi tersebut.
Anda dapat memanggil ini dari aplikasi Play Anda melalui REST, GraphQL, atau jika menggunakan Parse SDK, langsung.
Gunakan Back4App CLI atau dasbor:
- Instal CLI (contoh Linux/MacOS):
- Konfigurasi kunci akun:
- Terapkan:
Atau terapkan melalui Dasbor dengan menempelkan fungsi Anda di Cloud Code > Functions dan menekan “Terapkan”.
Cloud Code mendukung modul NPM. Misalnya, jika Anda memerlukan klien HTTP seperti axios:
Back4App menggunakan kelas Parse.User untuk pendaftaran, login, dan manajemen sesi. Dalam pengaturan konfigurasi, pastikan “Aktifkan Verifikasi Email” dan “Aktifkan Reset Kata Sandi” jika diinginkan.
Jika Anda memerlukan login sosial (Google, Apple, atau Facebook), konfigurasikan mereka di dasbor Back4App Anda. Parse menyediakan metode utilitas atau Anda dapat mengandalkan alur OAuth standar, tergantung pada kebutuhan dan pendekatan Anda.
Back4App menyimpan file melalui Parse.File. Dari Play Framework, Anda dapat mengunggah dengan REST atau Parse SDK.
Pertimbangan Keamanan: Anda dapat mengonfigurasi izin unggah file (aktifkan untuk publik, anonim, atau terautentikasi) di pengaturan server Back4App.
- Navigasikan ke Pengaturan Email di dasbor Back4App.
- Aktifkan verifikasi email dan atur template email untuk reset kata sandi.
- Di aplikasi Play Anda, Anda dapat memanggil:
Ini akan memicu Back4App untuk mengirimkan instruksi reset kata sandi ke email pengguna.
Jika Anda memerlukan tugas mulai untuk pekerjaan latar belakang (misalnya, membersihkan data atau menghasilkan laporan), Anda dapat menjadwalkan Cloud Jobs di Back4App.
Penjadwalan:
- Terapkan kode Cloud Anda.
- Di Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang, jadwalkan pekerjaan untuk dijalankan setiap hari, mingguan, atau sesuai kebutuhan.

Jika Anda ingin memberi tahu layanan eksternal setiap kali data berubah, atur Webhooks di Back4App.
- Pergi ke More > WebHooks di dasbor Back4App Anda.
- Tambahkan Webhook dengan endpoint (misalnya, Slack atau Stripe).
- Pilih pemicu, seperti “Rekaman baru di kelas Todo.”

Anda juga dapat membuat Webhooks dalam pemicu Cloud Code, melakukan permintaan HTTP langsung ke layanan pihak ketiga.

The Back4App Admin App adalah antarmuka yang ramah pengguna untuk manajemen data dan catatan. Pengguna non-teknis dapat menangani operasi CRUD tanpa harus menyelami kode.
- Pergi ke App Dashboard > More > Admin App.
- Aktifkan dan buat pengguna admin.
- Pilih subdomain untuk akses yang nyaman.

Setelah masuk, Anda dapat mengelola entri data tanpa mengganggu dasbor tingkat rendah atau alat CLI.

Selamat! Anda telah belajar cara membangun backend untuk Play Framework menggunakan layanan Back4App. Sepanjang tutorial ini, Anda telah:
- Membuat backend yang aman untuk aplikasi Play Framework di Back4App.
- Mengatur database, termasuk desain skema, hubungan, dan kueri waktu nyata.
- Menerapkan ACL dan CLP untuk akses data yang aman.
- Menulis Cloud Code untuk logika kustom, pemicu, dan integrasi eksternal.
- Mengonfigurasi otentikasi pengguna, login sosial, dan pengaturan ulang kata sandi.
- Menangani unggahan file dan menambahkan keamanan file opsional.
- Menjadwalkan tugas latar belakang dengan Cloud Jobs.
- Mengintegrasikan dengan layanan pihak ketiga melalui Webhooks.
- Menjelajahi Panel Admin Back4App untuk manajemen data yang lebih efisien.
Dengan alat-alat ini, Anda dapat mengoptimalkan mode pengembangan, menskalakan sesuai kebutuhan, dan membangun aplikasi web yang kuat di Play Framework.
Rangkul integrasi lebih lanjut, penyetelan kinerja, dan langkah-langkah keamanan lanjutan untuk membawa backend server Anda ke tingkat berikutnya.
- Tingkatkan pengaturan produksi Anda dengan alat caching, logging, atau monitoring.
- Jelajahi keamanan tingkat lanjut dengan kontrol akses berbasis peran atau pengaturan zero-trust.
- Integrasikan gateway pembayaran atau API pihak ketiga lainnya untuk perdagangan atau analitik.
- Periksa dokumentasi resmi Back4App untuk wawasan lebih dalam tentang kinerja dan pemecahan masalah.
- Tinjau lebih banyak tutorial tentang aplikasi obrolan waktu nyata, solusi IoT, atau layanan berbasis lokasi — banyak di antaranya membangun teknik dalam panduan ini.
