Quickstarters

Cara Membangun Backend untuk Golang?

35min

Pendahuluan

Dalam tutorial ini, Anda akan belajar bagaimana membangun dan menguji backend lengkap untuk Golang menggunakan Back4App.

Kami akan memandu Anda melalui integrasi fitur-fitur penting Back4App—seperti manajemen database, pengaturan keamanan, otentikasi pengguna, penyimpanan file, dan Cloud Code—untuk membuat backend yang aman, fleksibel, dan dapat diskalakan yang bekerja dengan baik dengan server http Go Anda.

Fokus kami adalah menggunakan API RESTful Back4App untuk terhubung ke database dari klien http Golang kami, daripada menggunakan Parse SDK yang khusus, sehingga kami dapat menggambarkan bagaimana membangun fungsi handler yang mudah untuk dipelihara untuk backend baru Anda.

Anda akan melihat bagaimana pendekatan ini mengurangi kompleksitas pengembangan dibandingkan dengan menyiapkan server Anda sendiri dari awal.

Dengan mengandalkan kueri waktu nyata Back4App, penyimpanan file, dan sistem otentikasi pengguna, Anda akan mempercepat proses pembuatan backend Anda.

Pada akhir tutorial, Anda akan tahu bagaimana membangun backend Golang yang aman, menjadwalkan tugas otomatis, dan mengintegrasikan webhook eksternal.

Anda akan dipersiapkan dengan baik untuk meningkatkan fondasi ini menjadi aplikasi siap produksi atau menambahkan logika kustom sesuai kebutuhan.

Prasyarat

  • Akun Back4App Daftar secara gratis di sini.
  • Proyek Back4App baru Memulai dengan Back4app
  • Lingkungan pengembangan Go (Golang) Pastikan Anda telah menginstal Go di mesin Anda. Anda dapat menemukan petunjuk di Dokumen Resmi Go.
  • Pengetahuan dasar tentang paket http Go dan API RESTful Pemahaman tentang cara menulis handler func, mengurai pesan kesalahan, menangani permintaan metode post, dan menyiapkan server http localhost akan sangat membantu.

Pastikan Anda memiliki prasyarat ini sebelum melanjutkan. Pengaturan ini akan mempermudah pengalaman Anda saat Anda menemukan cara membangun backend untuk Golang menggunakan Back4App.

Langkah 1 – Membuat Proyek Baru di Back4App dan Menghubungkan

Mengapa Proyek Baru?

Membuat proyek Back4App baru adalah langkah pertama Anda. Di sinilah Anda akan menyimpan data, mengonfigurasi penyimpanan file, menjadwalkan fungsi cloud, dan menambahkan tugas latar belakang. Proyek backend ini akan menjadi dasar untuk semua langkah selanjutnya.

  1. Masuk ke akun Back4App Anda.
  2. Klik “Aplikasi Baru” di dasbor Back4App Anda.
  3. Beri nama aplikasi Anda (misalnya, “Golang-Backend-Tutorial”).
Document image


Setelah dibuat, aplikasi ini akan muncul di dasbor Anda. Aplikasi ini sekarang menjadi backend berbasis Back4App Anda.

Menghubungkan melalui REST API

Back4App menyediakan API RESTful untuk membuat, memperbarui, dan menghapus data. Dalam Golang, kita akan menggunakan klien http dari pustaka standar Go untuk berkomunikasi dengan endpoint ini.

Temukan ID Aplikasi dan Kunci API REST dengan pergi ke Pengaturan atau Keamanan & Kunci bagian dari aplikasi Back4App Anda:

Document image


Anda akan memerlukan kredensial ini di setiap header permintaan. Kami akan menggambarkan ini di langkah-langkah berikutnya ketika kami terhubung ke database menggunakan metode post, GET, dan permintaan HTTP lainnya.

Langkah 2 – Menyiapkan Database

Membuat Model Data

Untuk menyimpan data di Back4App, Anda mendefinisikan kelas (tabel) dan kolom (field). Misalnya, katakanlah kita ingin kelas Todo . Anda dapat membuatnya secara manual di Dasbor Back4App:

  1. Pergi ke bagian Database di dasbor aplikasi Anda.
  2. Buat kelas baru bernama “Todo.”
  3. Tambahkan kolom seperti title (String) dan isCompleted (Boolean).
Buat Kelas Baru
Buat Kelas Baru


Anda juga dapat membiarkan sistem secara otomatis membuat kolom dengan mengirimkan objek dengan field baru dari aplikasi Golang Anda.

Membuat Model Data menggunakan AI Agent

  1. Buka AI Agent di Dasbor Aplikasi Anda.
  2. Deskripsikan model data yang Anda inginkan (misalnya, “Silakan buat kelas Todo baru dengan field judul dan field isCompleted.”).
  3. Terima skema yang disarankan.
Document image


Fitur berguna ini menghemat waktu dalam merancang skema basis data Anda.

Membaca dan Menulis Data Menggunakan REST API (Contoh Golang)

Berikut adalah contoh dasar tentang cara membuat (metode POST) dan mengambil (metode GET) data menggunakan paket http Go. Anggap Anda memiliki APPLICATION_ID dan REST_API_KEY sebagai variabel lingkungan.

Go


Dalam contoh-contoh ini, kami membuat klien http, menambahkan header yang diperlukan, dan menangani kode respons bersama dengan pesan kesalahan. Ingat untuk mengganti YOUR_APPLICATION_ID dan YOUR_REST_API_KEY dengan kunci yang sebenarnya dari proyek Back4App Anda.

Membaca dan Menulis Data Menggunakan API GraphQL

Back4App juga menyediakan endpoint GraphQL di https://parseapi.back4app.com/graphql. Anda dapat menggunakan pustaka klien Go GraphQL yang populer (seperti Machine Box graphql) untuk melakukan kueri atau mutasi. Ini bisa menjadi pendekatan yang lebih terstruktur daripada panggilan REST mentah.

Bekerja dengan Kueri Langsung (Opsional)

Jika Anda ingin melihat pembaruan waktu nyata di aplikasi Anda, Anda dapat mengaktifkan Kueri Langsung di Dasbor Back4App. Golang tidak memiliki pustaka Kueri Langsung Parse resmi. Namun, Anda dapat mengimplementasikan koneksi websocket Anda sendiri untuk mendengarkan pembaruan Kueri Langsung dari wss://YOUR_SUBDOMAIN.b4a.io. Fitur ini berguna untuk aplikasi kolaboratif yang memerlukan sinkronisasi data segera.

Langkah 3 – Menerapkan Keamanan dengan ACL dan CLP

Ikhtisar

Back4App menyediakan Daftar Kontrol Akses (ACL) dan Izin Tingkat Kelas (CLP) untuk melindungi data Anda. ACL didefinisikan pada setiap objek, sementara CLP mendefinisikan aturan umum untuk seluruh kelas.

Document image


Izin Tingkat Kelas

  1. Pergi ke Database tampilan aplikasi Anda di Back4App.
  2. Pilih sebuah kelas (misalnya, Todo).
  3. Klik Izin Tingkat Kelas dan atur akses baca/tulis untuk berbagai peran pengguna atau akses publik.
Document image


ACL

Anda dapat melewatkan ACL saat membuat atau memperbarui objek melalui panggilan REST. Ini memastikan hanya pengguna atau peran tertentu yang dapat membaca/menulis data. Untuk detail lebih lanjut, kunjungi Pedoman Keamanan Aplikasi.

Langkah 4 – Menulis Fungsi Kode Cloud

Mengapa Kode Cloud

Kode Cloud memungkinkan Anda menjalankan fungsi sisi server, pemicu, atau validasi—tanpa mengelola server Anda sendiri. Anda dapat menambahkan logika bisnis yang lebih canggih atau mengintegrasikan API eksternal dari sisi server.

Contoh Fungsi Cloud

Contoh sederhana adalah fungsi yang menghitung panjang teks. Di main.js file di dasbor Back4App:

JS


Penerapan

Terapkan Cloud Code dengan salah satu dari:

  • Back4App CLI:
  • Dasbor Back4App di Cloud Code > Functions. Tempelkan kode Anda di editor main.js dan klik Terapkan.
Document image


Memanggil Cloud Functions dari Golang

Anda dapat memanggil Cloud Function melalui REST dari klien http Anda:

Go


Langkah 5 – Mengonfigurasi Autentikasi

Aktifkan Autentikasi Pengguna

Back4App menggunakan kelas User untuk autentikasi. Ketika Anda membuat pengguna baru melalui REST, backend akan menyimpan kredensial dengan aman dan menghasilkan token sesi.

Bash


Gunakan token sesi yang dikembalikan untuk permintaan selanjutnya yang memerlukan hak pengguna. Dalam Go, Anda akan mengirimkan jenis permintaan HTTP yang sama dari klien http seperti yang ditunjukkan sebelumnya.

Login Sosial

Untuk login sosial seperti Google atau Facebook, Anda perlu mengonfigurasi pengaturan OAuth di Back4App. Alur ini sering melibatkan pertukaran token. Konsultasikan dengan Dokumentasi Masuk Dengan Apple / Login Sosial untuk detail.

Langkah 6 – Menangani Penyimpanan File

Pengaturan dan Unggah

Anda dapat menyimpan file di Back4App dengan mengirimkannya sebagai data yang dienkode base64 atau multipart/form-data:

Bash


Setelah mengunggah, Anda dapat melampirkan file ke objek dengan menyimpan URL file yang dikembalikan atau penunjuk file. Dalam Go, buat permintaan http dengan cara yang sama—pastikan Anda mengkodekan konten file dengan benar.

Langkah 7 – Verifikasi Email dan Reset Kata Sandi

Pentingnya

Verifikasi email memastikan pengguna mengontrol email yang diberikan, sementara reset kata sandi membantu mereka memulihkan akun. Kedua fitur ini meningkatkan keamanan dan kepercayaan.

Mengaktifkan Verifikasi Email

  1. Pergi ke Dasbor Back4App.
  2. Di bawah Pengaturan Email, aktifkan email verifikasi.
  3. Sesuaikan template email Anda jika diperlukan.

Ketika seorang pengguna mendaftar, email verifikasi secara otomatis dikirim kepada mereka.

Reset Kata Sandi

Gunakan endpoint REST requestPasswordReset untuk memulai reset kata sandi:

Bash

Bash


Langkah 8 – Menjadwalkan Tugas dengan Cloud Jobs

Apa yang Dilakukan Cloud Jobs

Cloud Jobs berjalan sesuai jadwal untuk mengotomatiskan tugas seperti membersihkan data yang sudah tidak terpakai atau mengirim buletin mingguan.

JS


Terapkan pekerjaan ini dan jadwalkan di Back4App Dashboard > Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang.

Document image


Langkah 9 – Mengintegrasikan Webhook

Mengapa Webhook

Webhook memungkinkan Anda memberi tahu layanan eksternal ketika peristiwa tertentu terjadi. Misalnya, Anda mungkin mengirim pemberitahuan Slack ketika item Todo baru dibuat.

  1. Pergi ke Webhook bagian di Back4App Dashboard Anda.
  2. Konfigurasi endpoint Anda (seperti https://your-external-service.com/webhook).
  3. Tetapkan pemicu (misalnya, afterSave pada Todo).
Menambahkan Webhook
Menambahkan Webhook


Anda juga dapat memicu API eksternal dari Cloud Code dengan menulis permintaan klien http jika Anda lebih suka kontrol langsung atas peristiwa.

Langkah 10 – Menjelajahi Panel Admin Back4App

Ikhtisar

Aplikasi Admin Back4App adalah antarmuka titik-dan-klik yang dapat Anda bagikan dengan anggota tim non-teknis untuk mengelola data.

Aktifkan Aplikasi Admin

  1. Pergi ke More > Admin App di Dasbor Back4App Anda.
  2. Aktifkan dan buat pengguna admin.
Aktifkan Aplikasi Admin
Aktifkan Aplikasi Admin


Gunakan subdomain yang Anda pilih untuk masuk ke UI yang sederhana untuk manipulasi data. Ini membebaskan Anda dari menulis kueri langsung atau kode kustom untuk melakukan operasi dasar.

Kesimpulan

Dalam panduan ini, Anda telah menemukan cara membangun backend untuk Golang menggunakan Back4App.

Anda menjelajahi cara menghubungkan ke database melalui API RESTful, menerapkan langkah-langkah keamanan dengan ACL dan CLP, menjalankan tugas terjadwal dengan Cloud Jobs, mengintegrasikan dengan layanan eksternal menggunakan Webhooks, dan mengatur otentikasi pengguna serta penyimpanan file.

Dengan paket http Go dan fitur kuat Back4App, Anda dapat merancang backend yang kuat yang menghemat waktu dan dapat diskalakan dengan mudah.

Sekarang setelah Anda menguasai dasar-dasarnya, Anda dapat memperluas logika fungsi handler Golang Anda, menghubungkan ke endpoint API baru, dan membangun aplikasi kaya yang memenuhi kebutuhan Anda.

Langkah Selanjutnya

  • Perbaiki aplikasi Golang Anda: Tambahkan fitur canggih seperti akses berbasis peran, atau optimalkan server http Anda untuk produksi.
  • Pelajari lebih lanjut tentang kueri waktu nyata: Integrasikan Kueri Langsung untuk aplikasi kolaboratif.
  • Jelajahi dokumentasi Back4App yang lebih lanjut: Sesuaikan ACL, log, dan analitik Anda.
  • Gabungkan API pihak ketiga: Gunakan Cloud Code atau webhook langsung untuk memperluas fungsionalitas backend Anda.