fix url path bug

This commit is contained in:
Looly
2021-03-28 14:21:36 +08:00
parent 68d5cf35d4
commit e8d15ec29c
4 changed files with 17 additions and 1 deletions

View File

@@ -128,7 +128,7 @@ public class UrlPath {
final StringBuilder builder = new StringBuilder();
for (String segment : segments) {
builder.append(CharUtil.SLASH).append(URLUtil.encodeAll(segment, charset));
builder.append(CharUtil.SLASH).append(URLUtil.encodeQuery(segment, charset));
}
if (withEngTag || StrUtil.isEmpty(builder)) {
builder.append(CharUtil.SLASH);

View File

@@ -235,4 +235,12 @@ public class UrlBuilderTest {
final UrlBuilder urlBuilder = UrlBuilder.of(webUrl, StandardCharsets.UTF_8);
Assert.assertEquals("a=123&b=4%3F6&c=789", urlBuilder.getQueryStr());
}
@Test
public void encodePathTest(){
// Path中的某些符号无需转义比如=
final String urlStr = "http://hq.sinajs.cn/list=sh600519";
final UrlBuilder urlBuilder = UrlBuilder.ofHttp(urlStr, CharsetUtil.CHARSET_UTF_8);
Assert.assertEquals(urlStr, urlBuilder.toString());
}
}