Quickstarters
CRUD Samples
How to Build a Basic CRUD App with Golang?
34 mnt
pendahuluan dalam panduan ini, anda akan belajar bagaimana mengembangkan aplikasi crud (buat, baca, perbarui, dan hapus) dasar menggunakan golang tutorial ini mencakup operasi penting yang diperlukan untuk mengelola data secara efektif, memanfaatkan back4app sebagai layanan backend yang kuat anda sekarang akan membangun server golang yang berkomunikasi dengan back4app melalui panggilan restful pertama, anda akan membuat dan mengonfigurasi proyek back4app yang bernama basic crud app golang proyek ini akan berfungsi sebagai basis data pusat untuk aplikasi anda selanjutnya, anda akan mendefinisikan skema basis data yang dapat diskalakan dengan menetapkan koleksi dan bidang yang terperinci—baik secara manual atau dengan bantuan agen ai back4app pengaturan ini memastikan sistem anda siap untuk manipulasi data yang efisien melalui operasi crud setelah itu, anda akan mengaktifkan aplikasi admin back4app, alat ramah pengguna dengan kemampuan seret dan lepas untuk mengelola koleksi anda ini menyederhanakan pembuatan, pembacaan, pembaruan, dan penghapusan catatan akhirnya, anda akan mengintegrasikan backend golang anda dengan back4app menggunakan rest api, sambil juga menerapkan kontrol keamanan yang kuat dan otentikasi pengguna jika diperlukan pada akhir tutorial ini, anda akan memiliki server web golang yang siap produksi yang mendukung operasi crud dasar dan terhubung dengan mulus ke database yang dikelola oleh back4app poin penting pahami cara membangun aplikasi crud dengan golang dan mengelola data menggunakan back4app dapatkan wawasan tentang cara mengatur arsitektur backend yang dapat diskalakan dan mengintegrasikannya dengan api rest golang pelajari cara menggunakan aplikasi admin back4app untuk manajemen data tanpa repot temukan teknik penyebaran termasuk kontainerisasi untuk peluncuran cepat prasyarat sebelum memulai, pastikan anda memiliki hal hal berikut akun back4app dengan proyek baru yang sudah disiapkan untuk panduan, lihat memulai dengan back4app https //www back4app com/docs/get started/new parse app lingkungan pengembangan golang instal go https //golang org/doc/install (versi 1 16 atau lebih baru disarankan) pemahaman dasar tentang golang, api rest, dan server http rujuk ke dokumentasi golang https //golang org/doc/ jika diperlukan langkah 1 – pengaturan proyek membuat proyek back4app baru masuk ke akun back4app anda klik tombol “aplikasi baru” di dasbor anda masukkan nama proyek basic crud app golang dan ikuti instruksi untuk membuat proyek anda buat proyek baru setelah proyek diatur, anda akan melihatnya terdaftar di dasbor back4app anda, siap untuk mendukung konfigurasi backend anda langkah 2 – desain skema basis data mendefinisikan struktur data anda untuk aplikasi crud dasar, anda akan membuat beberapa koleksi berikut adalah contoh koleksi dan bidang yang mungkin anda perlukan 1\ koleksi item koleksi ini menyimpan detail tentang setiap item bidang tipe data deskripsi id objectid kunci utama yang dihasilkan secara otomatis judul string nama atau judul item deskripsi string deskripsi singkat tentang item tersebut dibuat pada tanggal stempel waktu menandai pembuatan item diperbarui pada tanggal stempel waktu yang menandai pembaruan terakhir 2\ koleksi pengguna koleksi ini menyimpan data pengguna dan rincian otentikasi bidang tipe data deskripsi id objectid kunci utama yang dihasilkan secara otomatis nama pengguna string pengidentifikasi unik untuk pengguna email string alamat email unik pengguna hash kata sandi string kata sandi terenkripsi untuk masuk dibuat pada tanggal stempel waktu ketika akun dibuat diperbarui pada tanggal timestamp ketika akun terakhir diperbarui anda dapat mengatur koleksi ini secara manual melalui dasbor back4app dengan membuat kelas baru untuk masing masing dan mendefinisikan kolomnya buat kelas baru anda dapat menambahkan bidang baru dengan memilih tipe data, memberi nama bidang, mengatur nilai default, dan menunjukkan apakah itu diperlukan buat kolom memanfaatkan agen ai back4app untuk pembuatan skema agen ai back4app, yang dapat diakses melalui dasbor anda, dapat secara otomatis membuat skema database anda dari prompt deskriptif fitur ini memperlancar pengaturan proyek dan memastikan konsistensi cara menggunakan agen ai luncurkan agen ai buka dasbor back4app anda dan temukan agen ai di bawah pengaturan proyek deskripsikan model data anda masukkan prompt yang merinci koleksi dan bidang yang anda butuhkan tinjau dan terapkan agen menghasilkan definisi koleksi tinjau dan konfirmasi perubahan contoh prompt create the following collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated primary key) \ title string \ description string \ created at date (auto generated) \ updated at date (auto updated) 2\) collection users \ fields \ id objectid (auto generated primary key) \ username string (unique) \ email string (unique) \ password hash string \ created at date (auto generated) \ updated at date (auto updated) metode ini menghemat waktu dan membantu memastikan skema anda kuat dan dioptimalkan langkah 3 – mengaktifkan aplikasi admin & melakukan operasi crud ikhtisar aplikasi admin aplikasi admin back4app adalah antarmuka intuitif tanpa kode yang memungkinkan anda mengelola data backend anda ini menyediakan antarmuka seret dan lepas untuk membuat, membaca, memperbarui, dan menghapus catatan mengaktifkan aplikasi admin akses menu “lainnya” di dasbor back4app anda pilih “aplikasi admin” dan kemudian klik “aktifkan aplikasi admin ” atur kredensial admin anda dengan membuat pengguna admin awal, yang juga mengonfigurasi peran dan koleksi sistem aktifkan aplikasi admin setelah aktivasi, masuk ke aplikasi admin untuk mengelola database anda dasbor aplikasi admin menggunakan aplikasi admin untuk tugas crud di dalam aplikasi admin, anda dapat membuat rekaman gunakan tombol “tambah rekaman” di dalam koleksi (misalnya, item) untuk memasukkan data baru membaca/memperbarui rekaman klik pada sebuah rekaman untuk melihat atau mengubah detailnya menghapus rekaman hapus rekaman yang sudah tidak relevan dengan opsi hapus antarmuka ini menyederhanakan manajemen data dengan desain yang intuitif dan drag and drop langkah 4 – mengintegrasikan golang dengan back4app sekarang setelah backend anda dikonfigurasi dan dikelola melalui aplikasi admin, saatnya untuk menghubungkan aplikasi golang anda ke back4app menggunakan endpoint restful menyiapkan proyek golang anda inisialisasi direktori proyek golang anda buat folder bernama basic crud app golang dan jalankan go mod init basic crud app golang instal paket yang diperlukan untuk tutorial ini, pustaka standar sudah cukup, tetapi anda dapat memilih untuk menambahkan pustaka eksternal sesuai kebutuhan contoh kode untuk mengambil dan menampilkan item berikut adalah contoh program golang yang mengambil item dari koleksi item back4app anda package main import ( 	"encoding/json" 	"fmt" 	"io/ioutil" 	"log" 	"net/http" ) const ( 	appid = "your application id" 	restapikey = "your rest api key" ) type item struct { 	objectid string `json "objectid"` 	title string `json "title"` 	description string `json "description"` 	createdat string `json "createdat"` 	updatedat string `json "updatedat"` } type itemsresponse struct { 	results \[]item `json "results"` } func fetchitems() { 	url = "https //parseapi back4app com/classes/items" 	req, err = http newrequest("get", url, nil) 	if err != nil { 	 log fatalf("error creating request %v", err) 	} 	req header add("x parse application id", appid) 	req header add("x parse rest api key", restapikey) 	client = \&http client{} 	resp, err = client do(req) 	if err != nil { 	 log fatalf("error fetching items %v", err) 	} 	defer resp body close() 	body, err = ioutil readall(resp body) 	if err != nil { 	 log fatalf("error reading response %v", err) 	} 	var itemsresp itemsresponse 	if err = json unmarshal(body, \&itemsresp); err != nil { 	 log fatalf("error parsing json %v", err) 	} 	for , item = range itemsresp results { 	 fmt printf("title %s, description %s\n", item title, item description) 	} } func main() { 	fmt println("fetching items from back4app ") 	fetchitems() } program ini mengirimkan permintaan get ke endpoint items back4app, mendekode respons json, dan mencetak judul dan deskripsi setiap item memperluas fungsionalitas crud anda juga dapat mengimplementasikan fungsi dalam golang untuk membuat item kirim permintaan post dengan data item memperbarui item gunakan permintaan put atau post untuk memodifikasi catatan yang ada menghapus item lakukan permintaan delete untuk menghapus catatan integrasikan fungsi fungsi ini ke dalam server http penuh menggunakan net/http go untuk menangani rute untuk operasi crud anda langkah 5 – mengamankan backend anda mengimplementasikan kontrol akses tingkatkan keamanan data anda dengan menerapkan daftar kontrol akses (acl) saat melakukan operasi crud misalnya, pastikan hanya pengguna yang berwenang yang dapat memodifikasi atau menghapus data dengan menetapkan acl yang sesuai melalui dasbor back4app dan menegakkannya melalui api golang anda mengonfigurasi izin tingkat kelas sesuaikan izin tingkat kelas (clp) di antarmuka back4app untuk membatasi akses data kepada pengguna yang terautentikasi atau peran tertentu langkah 6 – autentikasi pengguna mengatur manajemen akun back4app menggunakan kelas pengguna parse untuk autentikasi dalam aplikasi golang anda, tangani pendaftaran dan login pengguna dengan mengirimkan permintaan ke endpoint back4app yang sesuai ini dapat mencakup pendaftaran pengguna permintaan post dengan nama pengguna, email, dan kata sandi login pengguna memverifikasi kredensial dan mengelola token sesi integrasikan endpoint ini dalam server golang anda untuk mengamankan operasi crud anda langkah 7 – menerapkan aplikasi golang anda 7 1 mempersiapkan build produksi anda kompilasi kode golang anda di direktori proyek anda, jalankan go build o crud app verifikasi biner pastikan executable ( crud app ) berjalan tanpa kesalahan 7 2 mengorganisir file proyek anda struktur proyek anda mungkin menyerupai basic crud app golang/ ├── main go ├── handlers go ├── models go ├── go mod └── readme md 7 3 mengcontainerisasi dengan docker jika anda lebih suka containerization, sertakan sebuah dockerfile seperti \# use an official golang image to build the app from golang 1 18 alpine as builder \# set the working directory workdir /app \# copy go mod and go sum files copy go mod go sum / \# download dependencies run go mod download \# copy the source code copy \# build the application run go build o crud app \# use a minimal image to run the app from alpine\ latest workdir /root/ copy from=builder /app/crud app expose 8080 cmd \[" /crud app"] 7 4 mendeploy aplikasi anda deploy di platform pilihan anda apakah anda memilih vps, penyedia cloud, atau layanan deployment back4app, unggah biner atau kontainer docker anda pantau deployment periksa log dan verifikasi bahwa endpoint api anda dapat dijangkau uji aplikasi akses url server anda untuk memastikan bahwa semua endpoint crud berfungsi seperti yang diinginkan langkah 8 – kesimpulan dan langkah selanjutnya kerja bagus! anda telah berhasil membangun aplikasi crud dasar menggunakan golang dan back4app anda telah menyiapkan proyek yang disebut basic crud app golang , merancang koleksi untuk item dan pengguna, dan menghubungkan backend golang anda ke back4app melalui rest api langkah selanjutnya tingkatkan api anda tambahkan lebih banyak endpoint untuk tampilan item yang lebih detail, kemampuan pencarian, atau pembaruan waktu nyata terapkan keamanan tambahan jelajahi metode otentikasi yang lebih canggih dan amankan endpoint anda lebih lanjut jelajahi sumber daya lainnya konsultasikan dokumentasi back4app https //www back4app com/docs dan dokumentasi golang https //golang org/doc/ untuk wawasan yang lebih mendalam dengan mengikuti tutorial ini, anda sekarang memiliki dasar untuk membangun aplikasi crud yang kuat dan dapat diskalakan dengan golang, terintegrasi dengan mulus dengan back4app selamat coding!