package main import ( "net/http" ) type Engine struct{} func (engine *Engine) ServeHTTP(w http.ResponseWriter, r *http.Request) { path := r.URL.Path switch path { case "/": _, _ = w.Write([]byte("Hello Go")) case "/gee": _, _ = w.Write([]byte("Gee!!!")) default: _, _ = w.Write([]byte("天啊, 404啦!!!!")) } } func main() { engine := new(Engine) http.ListenAndServe(":8000", engine) } //// 自定义ServeMux //func main() { // mux := new(http.ServeMux) // mux.HandleFunc("/hello", func(writer http.ResponseWriter, request *http.Request) { // _, _ = writer.Write([]byte("Hello Go")) // }) // _ = http.ListenAndServe(":8000", mux) //}