大猩猩复用器调用不正确的处理程序?

时间:2018-06-22 10:08:24

标签: go gorilla mux

我有以下代码:

r := mux.NewRouter()
r.HandleFunc("/", homeHandler)
r.HandleFunc("/login", loginHandler)
admin.Handle(r.PathPrefix("/admin").Subrouter())
....
http.Handle("/", r)
http.ListenAndServer(":1234", nil)

在管理软件包中,我有:

func Handle(router *mux.Router) {
    router.HandleFunc("/", adminHandler)
    router.HandleFunc("/add", addGameHandler)
    router.HandleFunc("/finish/{id}", finishGameHandler)
}

因此,当我尝试访问“ / admin” 时,服务器会调用 homeHandler ??但是,如果我尝试使用“ / admin / add” “ admin / finish / 123” ,则服务器将调用正确的处理程序。什么原因?我在做什么错了?

1 个答案:

答案 0 :(得分:0)

好吧,我尝试使用另一种浏览器,并且可以正常工作...因此,我清除了主浏览器中的cookie,历史记录和其他内容,从而解决了该问题。我仍然不知道为什么...也许我为保留登录数据而创建的Cookie有点问题?有关cookie路径的信息?