如何在 Groovy 中构建 URL

问题描述 投票:0回答:1

我想,我想在这里使用

URIBuilder
但不完全确定...

我有以下代码:

String serverURL = getServerURL(); // ex: "http://somesrv.example.com"
String appURL = getAppURL(); // ex: "http://myapp.example.com"

我现在需要将两者相加,以便产生以下结果:

http://somesrv.example.com/fizz?widget=http://myapp.example.com

但我不仅仅想使用字符串攻击(

def url = serverURL + "/fizz?widget=" + appURL
)。另外,我想要 URL 编码等。同样,我认为
URLBuilder
是这里的方法,但不确定。

我见过一个使用 JAX-RS 的示例'

UriBuilder
:

String url = UriBuilder.fromUri(serverURL).path("fizz").queryParam("widget", appURL).build();

现在我只需要弄清楚如何在 Groovy 中执行此操作?

groovy uribuilder
1个回答
9
投票

URIBuilder
就是要走的路。

def serverURL = "http://somesrv.example.com"
def appURL = "http://myapp.example.com"

def concat = new URIBuilder(serverURL)
concat.setPath("/fizz")
concat.addQueryParam("widget", appURL)

println concat

输出:

http://somesrv.example.com/fizz?widget=http%3A%2F%2Fmyapp.example.com
© www.soinside.com 2019 - 2024. All rights reserved.