【问题标题】:Java 1.6 and URIBuilderJava 1.6 和 URIBuilder
【发布时间】:2013-07-16 17:13:22
【问题描述】:

有没有一种简洁的方法可以使用 Apache URIBuilder 构建这个示例?

"http://host/path", passing "path2" -> "http://host/path/path2"
"http://host/path", passing "/path2" -> "http://host/path2"

“resolve”方法不起作用,它总是返回:

http://host/path2

谢谢。

【问题讨论】:

  • 没错,我错了。我的意思是使用来自 java.net 的 URI。

标签: java apache uri uribuilder


【解决方案1】:

你应该在你的 baseurl 上添加一个斜杠。

new java.net.URI("http://host/path/").resolve("path2");  // http://host/path/path2
new java.net.URI("http://host/path/").resolve("/path2"); // http://host/path2

没有尾部斜线path 将不会作为目录处理。比解析绝对或相对 path2 无关紧要,因为它们是针对 host/ 解析的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-10
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 2015-10-14
    相关资源
    最近更新 更多