0% menganggap dokumen ini bermanfaat (0 suara)
69 tayangan6 halaman

Tutorial Golang REST API + MySQL - Part 2 - by Kiddy - Medium

Tulisan ini memberikan tutorial tentang cara membuat REST API menggunakan Golang dan MySQL untuk melakukan operasi CRUD (Create, Read, Update, Delete). Penulis menjelaskan cara menambahkan fungsi untuk membuat data baru, memperbarui data, dan menghapus data dari database MySQL menggunakan metode POST, PUT, dan DELETE. Contoh kode dan hasil uji coba juga disediakan.

Diunggah oleh

Muhammad Tahir
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
69 tayangan6 halaman

Tutorial Golang REST API + MySQL - Part 2 - by Kiddy - Medium

Tulisan ini memberikan tutorial tentang cara membuat REST API menggunakan Golang dan MySQL untuk melakukan operasi CRUD (Create, Read, Update, Delete). Penulis menjelaskan cara menambahkan fungsi untuk membuat data baru, memperbarui data, dan menghapus data dari database MySQL menggunakan metode POST, PUT, dan DELETE. Contoh kode dan hasil uji coba juga disediakan.

Diunggah oleh

Muhammad Tahir
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 6

Open in app

Kiddy

Follow 1.3K Followers About

Tutorial Golang REST API + MySQL — Part 2


Tutorial belajar REST API Golang + MySQL (CREATE UPDATE DELETE)

Kiddy Jun 13, 2018 · 3 min read

Hello gengs, pada tutorial kali ini gue akan ngajarin gimana caranya melakukan
CREATE, UPDATE, dan DELETE. Di tutorial ini gue anggep lo udah paham istilah
CRUD dan gue gak perlu lagi jelasin apa itu CRUD.

Oke langsung aja, berlanjut dari tutorial kemarin (Bagi yang belum baca silahkan
coba disini). Sekarang gue akan menjelaskan lanjutannya.

File yang digunakan masih data.go, sekarang kita akan menambahkan fungsi Create.
Cuss codenya dibawah

//code lanjutan dari tutorial part 1

func insertUsersMultipart(w http.ResponseWriter, r *http.Request) {


var users Users
var
Open in apparr_user []Users
var response Response

db := connect()
defer db.Close()

err := r.ParseMultipartForm(4096)
if err != nil {
panic(err)
}

first_name := r.FormValue("first_name")
last_name := r.FormValue("last_name")

_, err = db.Exec("INSERT INTO person (first_name,


last_name) values (?,?)",
first_name,
last_name,
)

if err != nil {
log.Print(err)
}

response.Status = 1
response.Message = "Success Add"
log.Print("Insert data to database")

w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(response)

Oke sedikit yang mau gue jelaskan disini, disini kita akan menggunakan tipe Post
dengan Form-data. Selain Form-data, lo juga bisa menggunakan x-www-form-
urlencoded dan juga JSON Raw. Kenapa Form-data? Karena gue pengennya pake itu
aja hahaha gaada alasan spesifik. Tapi kalo lo pengen pake x-www-form-urlencoded,
caranya gampang.

func insertUsers(w http.ResponseWriter, r *http.Request) {


err := r.ParseForm()
if err != nil {
panic(err)
}
first_name := r.Form.Get("first_name")
last_name := r.Form.Get("last_name")

//continue....

}
Open in app
tinggal ganti dengan ParseForm dan method untuk ambil get parameternya diikutin
aja.

Jangan lupa tambahin satu baris di main.go

router.HandleFunc(“/users”, insertUsersMultipart).Methods(“POST”)

Sekarang lo bisa coba dengan cara build projeknya terlebih dahulu dan berikut
adalah hasilnya.

Create Data

Hasil di database

Oke untuk Update dan Delete-nya lo bisa coba lewat code ini.

func updateUsersMultipart(w http.ResponseWriter, r *http.Request) {

db := connect()
defer db.Close()
Open in app err := r.ParseMultipartForm(4096)
if err != nil {
panic(err)
}

id := r.FormValue("user_id")
first_name := r.FormValue("first_name")
last_name := r.FormValue("last_name")

_, err = db.Exec("UPDATE person set first_name = ?,


last_name = ? where id = ?",
first_name,
last_name,
id,
)

if err != nil {
log.Print(err)
}

response.Status = 1
response.Message = "Success Update Data"
log.Print("Update data to database")

w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(response)

func deleteUsersMultipart(w http.ResponseWriter, r *http.Request) {

db := connect()
defer db.Close()

err := r.ParseMultipartForm(4096)
if err != nil {
panic(err)
}

id := r.FormValue("user_id")

_, err = db.Exec("DELETE from person where id = ?",


id,
)

if err != nil {
log.Print(err)
}

response.Status = 1
response.Message = "Success Delete Data"
log.Print("Delete data to database")

w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(response)

}
Open in app

Basic code nya masih sama, namun bedanya ada ID aja sekarang.

Jangan lupa tambahin routes dibawah di data.go

router.HandleFunc(“/users”,updateUsersMultipart).Methods(“PUT”)
router.HandleFunc(“/users”,deleteUsersMultipart).Methods(“DELETE”)

Langsung aja yuk nyoba

Proses Update data

Hasil update data


Open in app

Proses Hapus data

Hasil

Oke sampe situ aja yang bisa gue kasih, semoga tutorial Golang REST API + MySQL
ini bisa bermanfaat bagi elo selaku reader, dan gue selaku writer ya ^^

Happy coding!

Golang Rest Api MySQL

About Help Legal

Get the Medium app

Anda mungkin juga menyukai