是否有URL'的字符串生成器;什么是java?
是否有类似UriComponentsBuilder的URL的字符串生成器?因为我的URL字符串中的空格被替换为是否有URL'的字符串生成器;什么是java?,java,Java,是否有类似UriComponentsBuilder的URL的字符串生成器?因为我的URL字符串中的空格被替换为%20 UriComponentsBuilder builder = UriComponentsBuilder .fromPath("/test") .queryParam("param", "param 1"); String urlWithParams = builder.build().encode().toUriString(); urlWithParams的结
%20
UriComponentsBuilder builder = UriComponentsBuilder
.fromPath("/test")
.queryParam("param", "param 1");
String urlWithParams = builder.build().encode().toUriString();
urlWithParams的结果是/test?param=param%201
,但我需要/test?param=param 1
我当前的解决方法是
urlWithParams.replace(“%20”和“”)代码>URL中不能有空格,必须对其进行编码。换句话说,UriComponentsBuilder正在做正确的事情。请参阅:通常web框架具有类似的功能。你用一些吗?顺便说一句,手动连接可能会有更多问题,而不仅仅是%20。其中一个答案是使用URLEncode。在我看来,您正在尝试获取无效的内容(带有空格的URI)。不确定我是否能正确理解;如果您将要构建字符串-也许您应该使用StringBuilder?如果您正在尝试解码空格等-请检查:您实际上在尝试做什么?我使用restemplate.exchange函数。我不能使用URI参数,因为在最后一步中,我将基本路径与扩展路径相结合,如“+urlWithParams”。这将在另一个类中完成。URL中不能有空格,它们必须进行编码。换句话说,UriComponentsBuilder正在做正确的事情。请参阅:通常web框架具有类似的功能。你用一些吗?顺便说一句,手动连接可能会有更多问题,而不仅仅是%20。其中一个答案是使用URLEncode。在我看来,您正在尝试获取无效的内容(带有空格的URI)。不确定我是否能正确理解;如果您将要构建字符串-也许您应该使用StringBuilder?如果您正在尝试解码空格等-请检查:您实际上在尝试做什么?我使用restemplate.exchange函数。我不能使用URI参数,因为在最后一步中,我将基本路径与扩展路径相结合,如“+urlWithParams”。这将在另一节课上完成。