gpt4 book ai didi

go - 在 gorilla mux 路由器上设置 404 NotFound 处理程序

转载 作者:IT王子 更新时间:2023-10-29 02:25:21 24 4
gpt4 key购买 nike

这是我用 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("/",...) 但是它太贪心了。

最佳答案

Router导出一个 NotFoundHandler 字段,您可以将其设置为自定义处理程序。

r := mux.NewRouter()
r.NotFoundHandler = MyCustom404Handler

关于go - 在 gorilla mux 路由器上设置 404 NotFound 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43613311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com