【发布时间】:2017-09-22 14:58:14
【问题描述】:
这是我用 Go 语言和 gorilla mux 包编写的小型演示网络服务器的代码:
package main
import (
"fmt"
"github.com/gorilla/mux"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
fmt.Fprintf(w, "Hi there, I love %s!", vars["username"])
}
func homeHandler(w http.ResponseWriter, r *http.Request) {
if r.URL.Path != "/" {
errorHandler(w, r, http.StatusNotFound)
return
}
vars := mux.Vars(r)
fmt.Fprintf(w, "Hi there, I love %s!", vars["username"])
}
func main() {
r := mux.NewRouter()
r.HandleFunc("/help/{username}/", handler)
http.Handle("/", r)
http.ListenAndServe(":8080", nil)
}
但我没有找到实现自定义 404 页面的方法。
但我不能做一个 r.HandleFunc("/",...) 但它太贪心了。
【问题讨论】:
-
要自己提供自定义错误页面,请参阅httprouter configuring NotFound。