14 HTML Template Cache

14 HTML Template Cache

Pengenalan Template Cache

Pada kode-kode program sebelumnya yang sudah kita pelajari secara praktik itu tidak efisien. Kenapa seperti itu? karena setiap diakses maka akan memanggil fungsi dan menjabarkan data yang dikirim ke dalam template tersebut sehingga prosesnya pun membutuhkan eksekusi yang tinggi. Setiap handler dipanggil kita akan selalu parsing ulang template-nya. Maka idealnya template hanya melakukan parsing satu kali saja diawal ketika aplikasi akan berjalan maka selanjutnya data template saja yang di caching (disimpan memory) sehingga tidak perlu akses data dan melakukan parsing lagi agar website kita yang kita buat itu bisa semakin cepat.

13 HTML Template Function

13 HTML Template Function

Pengenalan Template Function

Selain mengakses field dalam template, kita juga bisa melakukan akses terhadap suatu fungsi atau function dalam golang. Cara untuk mengakses function sama seperti halnya mengakses field namun jika fungsi tersebut memiliki parameter maka kita bisa gunakan tambahan parameter yang dikirim ketika memanggil fungsi di template-nya tersebut.

12 HTML Template Layout

12 HTML Template Layout

Pengenalan Template Layout

Saat kita membuat halaman website ada beberapa bagian yang selalu sama pada tiap halaman misalnya yaitu header dan footer, maka jika terdapat bagian yang sama itu disarankan untuk disimpan pada template yang terpisah agar bisa digunakan di template yang lain atau kadang kita sebut reusable. Nah pada golang template iin sudah mendukung import dari template lain sehingga bisa kita gunakan untuk mempermudah pembuatan website.

11 HTML Template Action

11 HTML Template Action

Pengenalan Template Action

Tidak hanya teks saja kita bisa render dalam template tetapi kita juga bisa mendukung perintah action seperti percabangan if, perulangan for dan lain-lain. Contoh misalkan kita menggunakan percabangan if seperti ini

10 HTML Template Data

10 HTML Template Data

Pengenalan Template Data

Jika Anda sudah mempelajari HTML Template pada artikel sebelumnya, maka kita akan lanjutkam mengenai template data dimana data ini bisa kita tampilkan secara dinamis dengan cara menggunakan data struct ataupun map. Namun perlu diketahui perubahan di dalam text template kita perlu tahu nama field atau key yang akan kita gunakan untuk mengisi data dinamis tdi template. Kita bisa menyebutkan nama field atau key tersebut seperti contoh {{.NamaField}}.

09 Mengenal HTML Template

09 Mengenal HTML Template

Web Dinamis menggunakan Template

Pada postingan sebelumnya kita telah membahas web dinamis tetapi dengan menggunakan respon string yang terdapat pada statik file. Maka pada kesempatan kali ini kita akan mencoba mengenal templating pada golang dimana halaman katakanlah html tersebut akan dinamis dan bisa berubah-ubah dengan data yang diakses oleh user.

08 Memahami File Server

08 Memahami File Server

Pengenalan File Server

Pada Golang memiliki sebuah fitur yang bernama FileServer. Dengan ini kita bisa membuat Handler di Golang Web yang telah kita gunakan itu sebagai static file server dan FileServer ini tidak perlu manual melakukan load lagi. Sehingga kita bisa tambahkan ke dalam http.Server atau http.ServeMux.

07 Memahami Cookie

07 Memahami Cookie

Sebelum ke pembahasan Cookie kita perlu ketahui bahwa HTTP merupakan stateless antara client dan server yang artinya server tidak menyimpan data apapun untuk mengingat setiap request dari client. Hal ini bertujuan agar mudah melakukan scalability dari server itu sendiri. Lalu bagaimana cara agar server bisa mengingat sebuah client? misalnya ketika kita sudah login di suatu website, secara otomatis server harus tahu jika client tersebut sudah login sehingga request selanjutnya tidak perlu lagi melakukan login. Hal seperti ini bisanya kita bisa memanfaatkan Cookie.

06 Response Code

06 Response Code

Pengenalan Response Code

Hal yang perlu kita ketahui juga dalam HTTP yaitu response code. Ini merupakan representasi dari kode response yang mana dari kode ini kita bisa melihat apakah sebuah request yang kita kirim dari client itu sukses dilakukan proses oleh server atau gagal diproses oleh server. Maka ada banyak sekali response code yang bisa kita gunakan saat membuat web. Kamu bisa langsung lihat lebih dalam beberapa HTTP Status Code disini https://developer.mozilla.org/en-US/docs/Web/HTTP/Status

05 Request Form Post

05 Request Form Post

Pengenalan Form Post

Sama halnya dengan postingan sebelumnya ketika kita menggunakan method GET maka hasil semua data di form akan menjadi query param sedangkan jika kita menggunakan POST maka semua data di form dikirim via body HTTP Request hanya berbeda methodnya saja. Semua data form post yang dikirim dari client secara otomatis akan disimpan dalam atribut Request.PostFrom. Namun sebelum kita bisa mengambil data atribut PostForm, kita wajib memanggil method Request.ParseForm() terlebih dahulu lalu method ini akan digunakan untuk melakukan parsing body. Parsing data tersebut akan menghasilkan data form, jika tidak ada maka akan menyebabkan error pada parsing-nya.

04 Request Header

04 Request Header

Pengenalan Header

Selain query parameter pada HTTP juga kita bisa menggunakan Header. Header adalah informasi tambahan yang biasa dikirim dari client ke server atau pun sebaliknya. Dalam Header, tidak hanya ada pada HTTP Request tetapi pada HTTP Respone pun kita bisa menambahkan informasi header. Saat kita menggunakan browser pada komputer kita, biasanya secara otomatis header akan ditampilkan oleh browser seperti informasi browser, jenis tipe content yang dikirim dan diterima oleh browser dan masih banyak lagi.

03 Penggunaan Query Parameter

03 Penggunaan Query Parameter

Pengenalan Query Parameter

Query parameter adalah salah satu fitur dari http yang biasanya kita gunakan untuk mengirim data dari client ke dalam server. Query pameter ini ditempatkan pada URL dari endpoint yang sudah kita buat. Untuk menambahkan query parameter, kita bisa gunakan ?=nama=value pada URL website kita.