gpt4 book ai didi

go - 处理 Gorilla mux 空变量

转载 作者:IT王子 更新时间:2023-10-29 01:59:48 25 4
gpt4 key购买 nike

我正在使用 gorilla 多路复用器来获取模式值。我如何像这样处理一个空变量:

开始:

func ProductHandler (w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
a := vars["key"]
if a = "" { //does not seem to register empty string
//do something
} else
//do something
}

var r = mux.NewRouter()

func main() {
r.HandleFunc("/products/{key}", ProductHandler)

http.Handle("/", r)

http.ListenAndServe(":8080", nil)
}

当我输入 url www.example.com/products 或 www.example.com/products/时,出现 404 页面未找到错误。我如何处理 ProductHandler 中的空变量?

http://www.gorillatoolkit.org/pkg/mux

最佳答案

最简单的解决方案?添加:

r.HandleFunc("/products", ProductHandler)

我很确定 Gorilla 会按注册顺序安排最长的比赛

这也是documentation's overview page的方式建议使用:

Then register routes in the subrouter:

s.HandleFunc("/products/", ProductsHandler)
s.HandleFunc("/products/{key}", ProductHandler)
s.HandleFunc("/articles/{category}/{id:[0-9]+}"), ArticleHandler)

关于go - 处理 Gorilla mux 空变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26181282/

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