Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parameters 戈朗:不要叫帕玛斯_Parameters_Go - Fatal编程技术网

Parameters 戈朗:不要叫帕玛斯

Parameters 戈朗:不要叫帕玛斯,parameters,go,Parameters,Go,例如,我有一个请求: POST /api/users/1/categories/2/posts/3 如何访问此参数? 我试过: req.ParseMultipartForm(defaultMaxMemory) req.Form.Get("id") req.Form.Get("1") req.Form.Get("_1") 但它不起作用。 关于GET的相同问题: GET /api/users/1/categories/2/posts/3 如何获取未命名的参数? 如果使用默认的htt

例如,我有一个请求:

POST /api/users/1/categories/2/posts/3
如何访问此参数?

我试过:

req.ParseMultipartForm(defaultMaxMemory)

req.Form.Get("id")
req.Form.Get("1")
req.Form.Get("_1")
但它不起作用。

关于GET的相同问题:

GET /api/users/1/categories/2/posts/3
如何获取未命名的参数?


如果使用默认的http服务器库,则需要解析Url路径部分并提取它们

有像Gorilla Mux(我个人喜欢)这样的库,可以用来自动添加这种逻辑

使用Gorilla/mux,当您注册处理程序时,您可以这样注册它:

r := mux.NewRouter()
r.HandleFunc("/api/users/{userId}/categories/{categoryId}/posts/{postId}", 
             MyHandler)
然后在处理程序中,您可以访问它们:

vars := mux.Vars(request)
userId := vars["userId"]
// etc...

如果使用默认的http服务器库,则需要解析Url路径部分并提取它们

有像Gorilla Mux(我个人喜欢)这样的库,可以用来自动添加这种逻辑

使用Gorilla/mux,当您注册处理程序时,您可以这样注册它:

r := mux.NewRouter()
r.HandleFunc("/api/users/{userId}/categories/{categoryId}/posts/{postId}", 
             MyHandler)
然后在处理程序中,您可以访问它们:

vars := mux.Vars(request)
userId := vars["userId"]
// etc...

我正在使用
martini
,这个功能也在哪里,但我需要在我的
中间件中获取这个参数,而不是在哪里working@cnaize然后您需要自己分割url路径并访问它们。如果您需要这方面的帮助,我会将其添加到我的答案中。哦,这将是有用的。我正在使用
martini
,该功能也在哪里,但我需要在我的
中间件
中获取该参数,而它不在哪里working@cnaize然后您需要自己分割url路径并访问它们。如果您需要这方面的帮助,我会将其添加到我的答案中。哦,它将非常有用ParseMultipartForm用于解析请求正文中的表单字段。您正在尝试解析请求URL。ParseMultipartForm用于解析请求正文中的表单字段。您正在尝试解析请求URL。