GoREST端点路径

时间:2013-11-04 09:50:10

标签: go endpoint gorest

我正在使用Go编写一个Web服务,我希望有这样的网址:

http://example.com/WEB/service.wfs?param1=2&param2=test .....

我正在使用GoREST,我的端点网址是:

method:"GET" path:"/WEB/service.wfs?{param:string}" output:"string"

我的问题是它永远不会返回“param”,但如果我使用端点则会这样做:

method:"GET" path:"/WEB/service.wfs/{param:string}" output:"string"

有办法处理“?” ?

2 个答案:

答案 0 :(得分:1)

你可以在最老的地方做到这一点虽然它不如gorest的首选机制那么好。

请勿在端点定义中包含查询参数

method:"GET" path:"/WEB/service.wfs" output:"string"

相反,您可以从注册的终点获取上下文,并使用类似

的内容获取查询参数
func (serv MyService) HelloWorld() (result string) {
    r := serv.Context.Request()
    u, _ := url.Parse(r.URL.String())
    q := u.Query()
    result = "Buono estente " + q["hi"][0]
    return
}

答案 1 :(得分:0)

我看过你正在使用的GoREST软件包,看不到任何方法。

我一直使用gorillatoolkit pat包。

gorillatoolkit

有一个关于你想要做一半的事情的例子。

category := req.URL.Query().Get(":category")

通过这种方式,您可以通过密钥获取请求URL上的查询参数。

希望这有帮助。