Search code examples
gomux

Go MUX controller returns 404


I must be missing something really obvious, but I've created a MUX routed controller and the server returns 404. Running the following:

package main

import (
    "fmt"
    "log"
    "net/http"
    "github.com/gorilla/mux"
)

func main() {
    router := mux.NewRouter()
    router.HandleFunc("/hi", SayHi)
    log.Fatal(http.ListenAndServe(":8080", nil))
}

func SayHi(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintln(w, "Hi")
}

Visit : http://localhost:8080/hi and I get a 404.

What am I doing wrong?


Solution

  • Just pass router variable as second parameter to http.ListenAndServe() instead of nil