我需要有关URI API的建议。
我正在像这样制作URI
new URI("http", "", "localhost", 9000, "/action", "param=1","")
res0: java.net.URI = http://@localhost:9000/action?param=1#
如您所见,它将“ @”放在localhost前面,而且我在URI的末尾看到“#”。我该如何摆脱这些?他们为什么要来?
答案 0 :(得分:4)
该URI构造函数的第二个参数是userInfo ...将其设置为null,而不是空字符串。
new URI("http", null, "localhost", 9000, "/action", "param=1", null)
答案 1 :(得分:0)
您正在设置分别由'@'和'#'正确分隔的userInfo和片段。
URI u = new URI("https", null, "localhost", 8080, "/myapi", "q=all", null);
System.out.print(u);
给予
https://localhost:8080/myapi?q=all