У меня есть следующий код:
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", сервер вызовет правильные обработчики. В чем причина? Что я делаю неправильно?