github.com/go-playground/validator/v10
Untuk validasi struct tagvalidate
membutuhkan package inigithub.com/google/uuid
Setup primary_key pada gorm tag butuh package inigithub.com/rs/cors
Setup CORSgorm.io/driver/mysq
DB driver connectiongorm.io/gorm
Object Relational Map, seluruh CRUD dalam rest api ini di handle package inigithub.com/spf13/viper
config setup package kalo dijavascript kaya dotenvgithub.com/golang-jwt/jwt
JSON web token package untuk middleware
- Setup database, pada file
app.env
silakan setup credential anda. - Login ke mysql ada lalu buat database, dalam case saya namanya
soal_rest
- Pastikan anda menginstall go lalu clone repo ini dan jalankan perintah di terminal
go mod tidy
Important
pade endpoint http://localhost:8000/txdate
by default adalah current transaction bulan ini.
dan mohon teliti pada path setiap request mungkin saya ada kesalahan. untuk http://localhost:8000/home
bakal nampilin data kosong jika data dari pemasukan dan pengeluaran tidak di isi sama sekali.
- Lakukan register terlebih dahulu
- Jika sudah ter register silahkan login untuk mendapatkan jwt nya
- Ok untuk melakukan operasi CRUD dalam rest api ini pastikan ada menyalin token dari hasil login lalu masuk ke fungsi insert atau add data baik itu kategori maupun transaksi.
- Selanjutnya masuk ke tab Authorization pilih
Bearer Token
dan masukan jwt yang sudah di copy dari hasil login. - Lakukan insert atau add data terlebih dahulu sebelum melakukan yang lain
- Untuk mendapatkan ID lakukan list all terlebih dahulu setelah melakukan insert data, lalu copy id dan gunakan untuk modify data.
- Selesai, lakukan modifikasi data sesuai selera.
go build && ./soal_rest
air main.go