【发布时间】:2018-06-09 01:42:33
【问题描述】:
我有一个方法,它接受一些参数并从中形成一个 URI,以便访问我们的客户端 REST 服务。这些参数之一可能会出现空格。问题是 UriComponentsBuilder.pathSegment 忽略了空间。因此,假设'v1', ' ', 'v2'... 将形成 URI .../v1/v2 而不是 /v1/%20/v2。如果我将%20 直接传递给pathSegment,它将替换为%2520。这是我的功能
private String getJsonStringFromDetranRestParams(String url, String... params) {
URI targetUrl = UriComponentsBuilder.fromUriString(url).pathSegment(params).build().encode().toUri();
String json = restTemplate.getForObject(targetUrl, String.class);
return json;
}
函数中是否有任何类型的“转义字符”,因此它将%20 视为有效字符串而不是特殊字符串。我正在寻找 \\ Java 等效项。
【问题讨论】:
标签: spring spring-boot