pemrograman

16 HTML Web Redirect

Redirect

Pada saat kita membuat sebuah website, jika pengguna melakukan akses ke berbagai halaman dengan sembarang maka akan terjadi halaman tidak ditemukan. Maka kita perlu membuat redirect sebuah halaman jika pengguna melakukan suatu aksi pada halaman website kita. Misalkan setelah selesai login, maka kita akan lakukan redirect ke halaman dashbard. Redirect itu sendiri sebenarnya sudah standard dalam HTTP dan bisa melihat di halaman website https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections. Kita hanya perlu membuat response code 3xx dan menambahkan header location yang akan dituju. Untungnya pada Golang ada fungsi yang bisa kita gunakan untuk mempermudah ini.

Cara Implementasinya pada Golang

Baiklah kita akan coba mengimplementasikan Redirection HTTP pada Golang. Sebelumnya kita buat terlebih dahulu dua fungsi handler dibawah ini.

func RedirectToHandler(w http.ResponseWriter, r *http.Request) {
	fmt.Fprint(w, "Hello Santekno")
}

func RedirectFromHandler(w http.ResponseWriter, r *http.Request) {
	http.Redirect(w, r, "/redirect-to", http.StatusTemporaryRedirect)
}

Setelah itu kita panggil handler yang kita buat pada router mux seperti dibawah ini.

mux.HandleFunc("/redirect-to", RedirectToHandler)
mux.HandleFunc("/redirect-from", RedirectFromHandler)

Jalankan program dan buka browser dengan mengakses kedua halaman dibawah ini.

http://localhost:8080/redirect-to
http://localhost:8080/redirect-from

Maka akan terlihat halaman seperti dibawah ini.

tutorial golang redirect

Maka jika kita mengakses halaman redirect-from maka akan dialihkan halamannya ke dalam redirect-to kenapa seperti itu? karena pada handler kita mengalihkan halaman tersebut agar tidak bisa diakses dan diarahkan ke halaman yang lain.

comments powered by Disqus