34 lines
656 B
Go
34 lines
656 B
Go
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)
|
|
//}
|