我正在使用Go开发REST API,但我不知道如何进行路径映射并从中检索路径参数.
我想要这样的东西:
func main() { http.HandleFunc("/provisions/:id", Provisions) //<-- How can I map "id" parameter in the path? http.ListenAndServe(":8080", nil) } func Provisions(w http.ResponseWriter, r *http.Request) { //I want to retrieve here "id" parameter from request }
http
如果有可能的话,我想只使用包而不是web框架.
谢谢.
如果您不想使用众多可用路由包中的任何一个,那么您需要自己解析路径:
将/ provision路径路由到您的处理程序
http.HandleFunc("/provisions/", Provisions)
然后根据需要在处理程序中拆分路径
id := strings.TrimPrefix(req.URL.Path, "/provisions/") // or use strings.Split, or use regexp, etc.