Golang : Membuat HTTP Server Sederhana

 

Latihan Golang: HTTP Server

 

  1. Buat HTTP server sederhana yang berjalan di port 8080 dan merespon "Hello, World!" pada endpoint root (/).

    • Clue: gunakan http.HandleFunc() dan http.ListenAndServe().

    • Keyword: net/http, HandleFunc, ListenAndServe

     

  2. Tambahkan endpoint /time yang mengembalikan waktu saat ini. Formatkan menggunakan time.Now().Format("2006-01-02 15:04:05").

    • Clue: gunakan package time.

    • Keyword: time, Format, Now

     

  3. Buat endpoint /greet?name=... yang menerima query parameter name dan mengembalikan pesan "Hello, {name}". Jika parameter kosong, default "Hello, Guest".

    • Clue: gunakan r.URL.Query().Get("name").

    • Keyword: query parameter, URL, default value

     

  4. Tambahkan endpoint /json yang mengembalikan response dalam format JSON, misalnya:

       

    {
        "status": "success",
        "message": "Hello from Go"
    }
  • Clue: gunakan json.NewEncoder(w).Encode(data).

  • Keyword: encoding/json, struct, Encode

 

  1. Gunakan goroutine sederhana untuk simulasi proses lama.

    Buat endpoint /process yang akan menunggu 3 detik (time.Sleep) sebelum merespon "Process finished".

    • Clue: gunakan goroutine atau langsung dengan time.Sleep.

    • Keyword: goroutine, time.Sleep