Bagaimana Cara Membangun Backend untuk Flask?
Dalam tutorial ini, Anda akan belajar cara membangun backend untuk Flask menggunakan Back4App.
Flask adalah kerangka backend yang ringan yang menangani permintaan HTTP dengan mudah, dan bekerja secara efisien dalam mode debug selama pengembangan.
Kami akan membahas integrasi fitur-fitur penting Back4App—seperti manajemen database, Fungsi Cloud Code, API REST dan GraphQL, otentikasi pengguna, dan kueri waktu nyata (Live Queries)—untuk membuat backend yang aman, skalabel, dan kuat untuk aplikasi Flask Anda.
Anda juga akan melihat bagaimana pengaturan cepat Back4App dan lingkungan yang intuitif dapat secara drastis mengurangi waktu dan usaha dibandingkan dengan mengonfigurasi server dan database secara manual.
Kami akan menggunakan kode Python untuk menghubungkan Flask ke server Parse Back4App. Sepanjang jalan, Anda akan mendapatkan pengalaman langsung dengan fungsionalitas kunci, termasuk fitur keamanan tingkat lanjut, penjadwalan tugas dengan Cloud Jobs, dan pengaturan webhook untuk integrasi eksternal.
Pada akhir tutorial ini, Anda akan siap untuk meningkatkan pengaturan dasar ini menjadi aplikasi siap produksi atau dengan mudah menggabungkan logika kustom dan API pihak ketiga sesuai kebutuhan.
Untuk menyelesaikan tutorial ini, Anda akan membutuhkan:
- Akun Back4app dan proyek Back4app baru Memulai dengan Back4app. Jika Anda belum memiliki akun, Anda dapat membuatnya secara gratis. Ikuti panduan di atas untuk menyiapkan proyek Anda.
- Lingkungan pengembangan Flask dasar Anda dapat menginstal Flask melalui pip install flask. Pastikan Anda telah menginstal Python 3.7+ di mesin Anda.
- pip install parse Paket Python ini memungkinkan aplikasi Flask Anda berinteraksi dengan Parse Server Back4App.
- Keterampilan dengan konsep Python dan Flask Dokumentasi Resmi Flask. Jika Anda baru mengenal Flask, tinjau dokumen resmi atau tutorial pemula sebelum memulai.
Pastikan Anda memiliki semua prasyarat ini sebelum Anda mulai. Menyiapkan proyek Back4app Anda dan lingkungan Flask lokal Anda akan membantu Anda mengikuti lebih mudah.
Langkah pertama dalam membangun backend Flask Anda di Back4App adalah membuat proyek baru. Jika Anda belum membuat satu, ikuti langkah-langkah ini:
- Masuk ke akun Back4App Anda.
- Klik tombol “Aplikasi Baru” di dasbor Back4App Anda.
- Beri nama aplikasi Anda (misalnya, “Tutorial-Backend-Flask”).

Setelah proyek dibuat, Anda akan melihatnya terdaftar di dasbor Back4app Anda. Proyek ini adalah dasar dari semua konfigurasi backend.
Back4App bergantung pada Platform Parse untuk mengelola data Anda, menyediakan fitur waktu nyata, menangani otentikasi pengguna, dan lainnya.
Menyambungkan aplikasi Flask Anda ke Back4App melibatkan pemasangan paket parse Python dan menginisialisasinya dengan kredensial dari dasbor Back4App Anda.
Ambil Kunci Parse Anda: Di dasbor Back4app Anda, navigasikan ke bagian “Pengaturan Aplikasi” atau “Keamanan & Kunci” untuk menemukan ID Aplikasi dan Kunci Klien (atau Kunci API REST jika diperlukan). Anda juga akan menemukan URL Server Parse (sering dalam format https://parseapi.back4app.com).

Pasang SDK Python Parse di lingkungan Flask Anda dengan menjalankan:
Inisialisasi Parse di aplikasi Flask Anda: Buat file (misalnya, parse_config.py) di direktori bernama app atau di mana pun Anda menyimpan modul backend Anda:
Kemudian, di file aplikasi Flask utama Anda (misalnya, app.py), Anda dapat import flask app flask modul bersama dengan konfigurasi Parse Anda:
Dengan menyelesaikan langkah ini, Anda telah membangun koneksi yang aman antara rute front-end Flask Anda dan backend Back4App. Semua permintaan dan transaksi data diarahkan dengan aman melalui kode Python Parse, mengurangi kompleksitas panggilan REST atau GraphQL manual (meskipun Anda masih dapat menggunakannya jika diperlukan).
Sebelum kita mulai, mari kita bicarakan tentang menyiapkan database. Anda dapat merancang skema data Anda di dasbor Back4App atau membiarkan Parse membuatnya secara langsung. Misalnya, Anda mungkin membuat kelas bernama “Todo” dengan bidang seperti title dan isCompleted.
- Navigasikan ke bagian “Database” di dasbor Back4App Anda.
- Buat kelas baru (misalnya, “Todo”) dan tambahkan kolom yang relevan, seperti title (String) dan isCompleted (Boolean).

Back4app mendukung berbagai jenis data, seperti String, Number, Boolean, Object, Date, File, Pointer, Array, Relation, GeoPoint, dan Polygon. Anda dapat memilih jenis yang sesuai untuk setiap field.
Jika Anda lebih suka pendekatan otomatis, Anda juga dapat menggunakan AI Agent dari Back4app:
- Buka AI Agent dari Dashboard Aplikasi Anda.
- Deskripsikan model data Anda dalam bahasa sederhana (misalnya, “Buat kelas ToDo dengan field title dan isCompleted di Back4app.”).
- Biarkan AI Agent membuat Skema untuk Anda.

Di Flask, Anda dapat membuat dan mengambil data dengan mengimpor parse dari parse_config.py inisialisasi Anda:
File aplikasi Flask ini menangani permintaan http untuk membuat dan membaca item Todo di database Back4App Anda.
Jika Anda lebih suka panggilan REST langsung, Anda dapat menguji dengan curl dari baris perintah:
Demikian pula, Back4app menyediakan endpoint GraphQL. Misalnya:
Jika Anda membutuhkan pembaruan waktu nyata, Back4app menyediakan Live Queries. Dalam skenario Flask, Anda biasanya akan menggunakan pustaka langganan sisi klien atau sisi server terpisah yang dapat mempertahankan koneksi websocket ke server Live Query Back4App.
- Aktifkan Live Queries di dasbor Back4app Anda di bawah Pengaturan Server aplikasi Anda.
- Gunakan klien Parse LiveQuery yang terhubung ke wss://YOUR_SUBDOMAIN_HERE.b4a.io dan mendengarkan peristiwa buat/perbarui/hapus.
Back4app menyediakan Daftar Kontrol Akses (ACL) dan Izin Tingkat Kelas (CLP) untuk mengunci data. ACL berlaku untuk objek individu, sementara CLP berlaku untuk seluruh kelas. Ini membantu Anda membatasi atau mengizinkan operasi baca/tulis per pengguna, peran, atau publik.

- Buka Dasbor Back4app Anda, pilih aplikasi Anda, dan buka bagian Database.
- Pilih kelas (misalnya, “Todo”).
- Buka izin tingkat kelas tab.
- Konfigurasikan default Anda, seperti “Memerlukan Autentikasi” atau “Tidak Ada Akses.”
Anda dapat menerapkan ACL dalam kode Python:
Cloud Code sangat cocok untuk menjalankan kode python (atau JavaScript dalam skenario lain) di sisi server, sehingga Anda tidak perlu meng-host infrastruktur Anda sendiri. Anda dapat menjalankan tugas seperti memvalidasi data, melakukan perhitungan kompleks, atau mengintegrasikan dengan layanan eksternal langsung dari server Parse.
Karena lingkungan Cloud Code default untuk Back4App menggunakan Node.js, Anda akan menulis Cloud Code Anda dalam JavaScript. Namun, Anda masih dapat memicu skrip sisi server ini dari aplikasi Flask Anda. Misalnya, sebuah Fungsi Cloud Node.js mungkin terlihat seperti:
Gunakan Back4app CLI untuk menerapkan Cloud Code Anda:
Sebagai alternatif, Anda dapat menerapkan melalui Dasbor Back4app dengan menempelkan kode JS Anda ke Cloud Code > Functions dan mengklik “Terapkan.”

Dalam Flask, Anda dapat memanggil fungsi cloud itu menggunakan REST:
Back4App memanfaatkan User kelas secara default. Parse menangani hashing kata sandi, token sesi, dan penyimpanan yang aman. Anda dapat mengelola fitur-fitur ini di Pengaturan Aplikasi Anda.
Back4App dan Parse dapat terintegrasi dengan penyedia sosial seperti Google, Apple, atau Facebook. Detail pengaturan bervariasi, jadi silakan merujuk ke Dokumen Login Sosial Parse.
Anda dapat mengunggah file ke database Parse Anda dari Flask dengan membuat sebuah parse.File() objek di lingkungan berbasis Node, atau Anda dapat menggunakan panggilan REST langsung dari Python. Jika Anda menyimpan referensi ke file-file ini di kelas Anda, file-file tersebut menjadi mudah diambil.
Setelah mengunggah file, Anda akan menerima URL file yang dapat Anda simpan di database Anda. Anda kemudian dapat merender atau mereferensikan file tersebut di template html sesuai kebutuhan.
Verifikasi email memastikan alamat email yang valid, dan reset kata sandi membantu pengguna mendapatkan kembali akses akun dengan aman.
- Pergi ke Pengaturan Email di dashboard Back4App.
- Aktifkan verifikasi email dan konfigurasi template email.
- Aktifkan reset kata sandi untuk mengirim tautan pemulihan kata sandi ke email pengguna.
Setelah diaktifkan, setiap pengguna baru yang mendaftar dengan email akan menerima tautan verifikasi. Untuk reset kata sandi, Anda dapat memanggil metode bawaan Parse melalui REST atau dari rute Flask Anda.
Pekerjaan Cloud memungkinkan Anda untuk menjadwalkan tugas latar belakang seperti membersihkan data atau mengirim email berkala. Misalnya, Anda dapat menghapus catatan lama setiap hari tanpa intervensi pengguna.
Kemudian, dari Dasbor Back4App Anda:
- Pergi ke Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang.
- Jadwalkan pekerjaan ini untuk dijalankan setiap hari atau pada interval yang Anda pilih.

Webhooks memungkinkan aplikasi Back4app Anda mengirim data ke layanan eksternal setiap kali pemicu tertentu terjadi. Ini berguna untuk integrasi dengan gateway pembayaran, Slack, analitik, atau layanan pihak ketiga lainnya.
- Navigasikan ke konfigurasi Webhooks di dasbor Back4App Anda > Lainnya > WebHooks.
- Tambahkan Webhook baru.
- Pilih pemicu yang akan memicu webhook.

Jika Anda ingin memberi tahu saluran Slack setiap kali catatan baru dibuat di “Todo,” atur URL webhook Slack. Kemudian, setiap kali Todo baru disimpan, Slack akan menerima permintaan POST yang berisi detailnya.
Aplikasi Admin Back4App menyediakan antarmuka yang ramah pengguna untuk anggota tim Anda yang tidak teknis. Ini adalah antarmuka yang berbasis model untuk operasi CRUD dan tugas tingkat perusahaan.
- Pergi ke Dasbor Aplikasi Anda.
- Pilih Lainnya > Aplikasi Admin dan aktifkan.
- Buat pengguna admin dan pilih subdomain untuk meng-host panel.



Setelah diaktifkan, Anda dapat masuk dengan kredensial admin Anda untuk mengelola data dengan lebih nyaman—tanpa menulis endpoint atau kueri khusus dalam kode Python Anda.

Dengan mengikuti tutorial komprehensif ini, Anda telah:
- Membuat backend yang aman untuk aplikasi Flask di Back4App.
- Mengonfigurasi database dengan skema kelas, tipe data, dan hubungan.
- Mengintegrasikan kueri waktu nyata (Live Queries) untuk pembaruan data segera.
- Menerapkan langkah-langkah keamanan menggunakan ACL dan CLP untuk melindungi dan mengelola akses data.
- Mengimplementasikan Cloud Code fungsi untuk menjalankan logika bisnis kustom di sisi server.
- Mengatur otentikasi pengguna dengan dukungan untuk verifikasi email dan pengaturan ulang kata sandi.
- Mengelola unggahan file dan pengambilan, dengan kontrol keamanan file opsional.
- Menjadwalkan Cloud Jobs untuk tugas latar belakang otomatis.
- Menggunakan Webhooks untuk mengintegrasikan dengan layanan eksternal.
- Menjelajahi Panel Admin Back4App untuk manajemen data.
Dengan framework backend Flask yang solid yang dapat mengembalikan file template render (jika diinginkan) dan pengaturan Back4App yang kuat, Anda sekarang dilengkapi untuk mengembangkan aplikasi yang kaya fitur, dapat diskalakan, dan aman.
Anda dapat menjalankan perintah flask run untuk memulai server pengembangan dan melanjutkan pengkodean.
Baris perintah tugas menjadi sederhana dengan metode pasca def rute yang menerima payload JSON.
- Bangun aplikasi Flask yang siap produksi dengan memperluas backend ini untuk menangani model data yang lebih kompleks, strategi caching, dan optimasi kinerja.
- Integrasikan fitur-fitur canggih seperti alur otentikasi khusus, kontrol akses berbasis peran, atau API eksternal (seperti gerbang pembayaran).
- Periksa dokumentasi resmi Back4app untuk penjelasan lebih dalam tentang keamanan canggih, penyetelan kinerja, dan analisis log.
- Jelajahi tutorial lainnya tentang aplikasi obrolan waktu nyata, dasbor IoT, atau layanan berbasis lokasi. Anda dapat menggabungkan teknik yang dipelajari di sini dengan API pihak ketiga untuk membuat aplikasi kompleks di dunia nyata.
