我嘗試生成以下URI如何讓UriBuilder使用已解碼的哈希字符構建一個URI?
//主機:端口/名稱/#/名稱/姓名
與球衣URI生成器。問題是uri生成器解碼哈希字符。
有沒有人如何建立給定的URI?
那是什麼,我有:
final URI build = uriInfo.getBaseUriBuilder().path("..").path("#").path("/clients/asd/").build();
我嘗試生成以下URI如何讓UriBuilder使用已解碼的哈希字符構建一個URI?
//主機:端口/名稱/#/名稱/姓名
與球衣URI生成器。問題是uri生成器解碼哈希字符。
有沒有人如何建立給定的URI?
那是什麼,我有:
final URI build = uriInfo.getBaseUriBuilder().path("..").path("#").path("/clients/asd/").build();
#
不在URI路徑的有效字符; #
以及它後面的內容實際上是一個URI 片段。
你需要做什麼因此:
final URI build = uriInfo.getBaseUriBuilder().path("..")
.fragment("/clients/asd/").build();
(注:我不使用球衣,其實,我擡頭的Javadoc here,我想這是一樣的)
那就是它!非常感謝 –
對我來說,這是什麼工作:
final URI build = UriBuilder.fromUri("{arg1}").fragment("{arg2}").buildFromEncoded("../","/clients/asd/");
使用.path("..").fragment("/clients/asd/").build()
會產生
..#%2Fclients%2Fasd
你可以嘗試'。路徑(URLEncoder.encode( 「#」))' – Alden
@Alden 1.'URLEncoder.encode()'不適合工作的URI ; 2. OP實際上是想要一個URI片段,而不是爲了逃避散列號 – fge