#Tutorial
135 artikel
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
Pengenalan 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
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
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
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
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.
02 Penggunaan HTTP Test
Pengenalan HTTP Test
HTTP Test pada golang sudah disediakan package khusus untuk membuat unit test terhadap fitur Web. Semua itu ada pada package net/http/httptest
https://golang.org/pkg/net/http/httptest/. Dengan menggunakan package ini, kita bisa melakukan unit test terhadap handler web yang sudah kita buat tanpa harus menjalankan aplikasi web-nya sehingga kita bisa langsung fokus terhadap handler function yang ingin kita test.
01 Pengenalan Web
Pengenalan Web
Web merupakan kumpulan informasi yang tersedia dalam sebuah komputer yang terkoneksi secara langsung menerus melalui internet. Web ini berisi informasi dalam bentuk apapun seperti teks, audio, video dan lainnya. Web berjalan diaplikasi yang namanya web server yaitu aplikasi yang digunakan untuk menyimpan dan menyampaikan isi informasi web.
Pengenalan Dan Implementasi Golang Embed
Pengenalan Embed Package
Sejak Golang merilis versi 1.16 terdapat fitur baru dengan nama Embed. Package embed ini adalah fitur yang mempermudah membuka isi file pada saat compile time secara otomatis dimasukkan isi file tersebut ke dalam variabel yang sudah kita definisikan. Lebih lengkapnya bisa lihat di sini.
Mengenal Repository Pattern pada Golang
Dalam buku Domain-Driven Design, Eric Evans
menjelaskan bahwa
Repository is a mechanism for encapsulating storage, retrieval and search behaviour, which emulates a collection of objects
Pengenalan Integrasi Database MySQL pada Golang
Pengenalan Package Database
Pada pemrograman Golang sebenarnya secara default itu memiliki sebuah package bernama database. Package ini memiliki kumpulan standar interface
yang menjadikan standar untuk komunikasi ke dalam database sehingga kita bisa langsung membuat program yang akan kita buat itu menggunakan package tersebut untuk mengakses beberapa jenis database apapun dengan kode yang sama. Tetapi yang akan membedakan adalah hanya kode query SQL
yang digunakan sesuai dengan database yang digunakan.
Mengenal Package Context With Timeout Pada Golang
Pengenalan package context.WithTimeout
Pada artikel sebelumnya kita sudah mempelajari context.WithCancel
dimana kita mengirim sinyal cancel dari context
secara manual. Selain itu kita juga bisa menambahkan sinyal cancel
ke dalam context
secara otomatis dengan menggunakan pengaturan waktu timeout
. Dengan menggunakan pengaturan waktu, kita tidak perlu lagi melakukan pemanggilan eksekusi cancel secara manual, tetapi dengan timeout
cancel akan otomatis dieksekusi jika waktu timeout
sudah terlewati.