gpt4 book ai didi

java - 如何在 Java 中 "merge"两个 URI?

转载 作者:IT老高 更新时间:2023-10-28 21:01:21 25 4
gpt4 key购买 nike

这是服务器的绝对 URI:

URI base = new URI("http://localhost/root?a=1");

这是一个相对 URI:

URI rel = new URI("/child?b=5");

现在我正在尝试将相对值应用于绝对值并接收:

URI combined = base + rel; // somehow
assert combined.equals(new URI("http://localhost/root/child?a=1&b=5"));

是否可以使用 JDK 或某些库进行这样的操作?

最佳答案

URL mergedURL = new URL(new URL(baseUrl), relativeUrl);

要将基本 url 的参数传递给合并的 url,您必须通过调用 URL#getQuery 手动提取它们并将它们附加到新的 URL

类似的,

String finalUrl = mergedUrl.toString() + "&" + baseUrl.getQuery();

需要一个 if() 来决定是否需要一个 '&' 来加入它们,这取决于 mergeUrl 的样子。

关于java - 如何在 Java 中 "merge"两个 URI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8273019/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com