我正在将Golang Gorilla Toolkit 中的 Mux 包用于我的路线。
考虑以下路线:
m.HandleFunc("/admin/install", installHandler).Methods("GET")
m.HandleFunc("/admin/^((?!install).)*$", adminHandler).Methods("GET")
m.HandleFunc("/admin", adminHandler).Methods("GET")
问题在于中间路线的正则表达式 - 它没有被解释,所以路线将不起作用!
m.HandleFunc("/admin/{^((?!install).)*$}", adminHandler).Methods("GET")
使用 {} 大括号也不起作用。它只是被忽略,并被视为 /admin/
也没有:
m.HandleFunc("/admin/{_dummy:^((?!install).)*$}", adminHandler).Methods("GET")
简而言之,我在这里试图实现的是首先匹配 /admin/install 路由,然后我想使用正则表达式从下面的路由中排除那个确切的路由,但它不起作用。
有什么方法可以在 gorilla mux 包中使用正则表达式吗?
慕码人2483693
相关分类