是否存在等效于PHP的parse_url(http://php.net/manual/en/function.parse-url.php)或python的urlparse(http://docs.python.org/library/urlparse.html)的groovy / grails,它将URL字符串转换为包含主机,协议,查询字符串,片段,URI等的结构?
我认为它可能在grails.org/doc/latest/api/org/codehaus/groovy/grails/web/util/WebUtils.html中,但没有看到任何内容。我不认为HTTPBuilder或各种URLMapping实用程序是我需要的。
我真的只想从路径和queryString中拉出一个地图并正确处理边缘情况(params /blah/fuzz?foo=bar&foo=baz
数组,片段/blah/fuzz?foo=bar#baz
,重定向的编码网址)。
我知道我可以通过巧妙地使用URLMapping来处理PATH组件,例如:/blah/$code
,但我离开时解码了param块......
由于
答案 0 :(得分:8)
如果我理解正确,你真正需要的是简单的URI类:
new URI('http://google.com/?q=URL').query
答案 1 :(得分:2)
扩展@Artur Nowak的答案,也许你需要更多努力来获得你想要的东西。这是一个例子:
URI dbUri = new URI('http://google.com/?q=URL')
def username = dbUri?.getUserInfo()?.split(":")?.getAt(0)
def password = dbUri?.getUserInfo()?.split(":")?.getAt(1)
def host = dbUri?.getHost()
def databaseInstance = dbUri?.getPath()
def url = "jdbc:mysql://" + host + databaseInstance