Table of contents
No headings in the article.
Golang adalah bahasa pemrograman yang cepat, efisien, dan mudah digunakan. Dalam tutorial ini, kita akan membahas penggunaan Chi, sebuah router ringan dan fleksibel untuk Golang, untuk membangun aplikasi web sederhana. Chi menyediakan solusi yang ringkas dan efektif untuk menangani rute dan middleware dalam aplikasi web kita.
Langkah 1: Persiapan Lingkungan
Pastikan Anda telah menginstal Golang di komputer Anda. Anda dapat mengunduhnya dari situs resmi Golang. Setelah instalasi selesai, buat proyek baru dan masuk ke direktori proyek.
$ mkdir mywebapp
$ cd mywebapp
Langkah 2: Instalasi dan Penggunaan Chi
Install paket Chi menggunakan perintah berikut:
$ go get -u github.com/go-chi/chi
Buat file main.go
dan impor paket Chi:
// main.go
package main
import (
"net/http"
"github.com/go-chi/chi"
)
func main() {
r := chi.NewRouter()
// Tambahkan rute di sini
http.ListenAndServe(":3000", r)
}
Langkah 3: Menambahkan Rute
Tambahkan beberapa rute sederhana ke dalam router Chi. Buat file handlers.go
untuk menangani permintaan HTTP:
// handlers.go
package main
import (
"fmt"
"net/http"
)
func HomeHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprint(w, "Selamat datang di halaman utama!")
}
func AboutHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprint(w, "Ini adalah halaman tentang kami.")
}
Perbarui file main.go
untuk mengimpor dan menggunakan fungsi penanganan:
// main.go
package main
import (
"net/http"
"github.com/go-chi/chi"
)
func main() {
r := chi.NewRouter()
r.Get("/", HomeHandler)
r.Get("/about", AboutHandler)
http.ListenAndServe(":3000", r)
}
Langkah 4: Menjalankan Aplikasi
Jalankan aplikasi Anda dengan menjalankan perintah:
$ go run main.go
Buka browser dan akses http://localhost:3000
serta http://localhost:3000/about
untuk melihat hasilnya.
Langkah 5: Menambahkan Middleware
Chi mendukung middleware dengan sangat baik. Tambahkan middleware logging dan recovery ke aplikasi kita:
// main.go
package main
import (
"log"
"net/http"
"github.com/go-chi/chi"
"github.com/go-chi/chi/middleware"
)
func main() {
r := chi.NewRouter()
// Middleware
r.Use(middleware.Logger)
r.Use(middleware.Recoverer)
r.Get("/", HomeHandler)
r.Get("/about", AboutHandler)
http.ListenAndServe(":3000", r)
}
Kesimpulan
Chi adalah router yang ringan dan mudah digunakan untuk pengembangan aplikasi web dengan Golang. Dalam tutorial ini, kita melihat bagaimana mengatur proyek, menggunakan Chi untuk menangani rute, menambahkan penanganan permintaan, dan mengaplikasikan middleware. Dengan fondasi ini, Anda dapat membangun aplikasi web yang lebih kompleks dan menyesuaikan pengalaman pengguna dengan fitur-fitur yang diberikan oleh Golang dan Chi.