Go或Beego是否支持动态网址路由,例如id =?

时间:2017-02-16 12:50:55

标签: url go router beego dynamic-url

func main() {

    beego.Router("/", &MainController{})
    beego.Router("/userid/", &SqlController{})
    beego.Run()

}

这适用于网址“http://localhost:8080/userid” 但如果我希望用户ID值为ex“http://localhost:8080?userid=1”的动态 我无法如何使用路由器实现这一目标。

2 个答案:

答案 0 :(得分:1)

xxx中提取?id=xxx是关于请求参数解析,您可以在beego's document中获取示例。

路由(在您的上下文中)是将与特定模式匹配的请求映射到相应的操作。当id不同时,我想你想要的不是将它们映射到不同的动作。所以它不应该被称为路由。它只是参数解析。

答案 1 :(得分:0)

不确定beego,但使用go http请求你可以访问这样的查询参数 request.URL.Query(),其中request的类型为*http.Request。你想要的基本上是来自URL的查询参数?因此,您从请求中获取URL对象,然后访问查询参数。 Query()方法返回map[string][]string