mirror of
https://gitee.com/dromara/hutool.git
synced 2025-04-24 18:04:54 +08:00
修复HttpUtil.urlWithFormUrlEncoded方法重复编码问题
This commit is contained in:
parent
28882f5833
commit
8ca768a997
@ -269,7 +269,7 @@ public class StrUtil extends CharSequenceUtil implements StrPool {
|
||||
*
|
||||
* @param obj 对象
|
||||
* @return {@link String }
|
||||
* @author ahwei163@qq.com
|
||||
* @author Junwei Xu
|
||||
*/
|
||||
public static String toStringOrEmpty(final Object obj) {
|
||||
// obj为空时, 返回 null 或 "null" 都不适用部分场景, 此处返回 "" 空字符串
|
||||
|
@ -206,7 +206,7 @@ public class HttpUtil {
|
||||
* @return 合成后的URL
|
||||
*/
|
||||
public static String urlWithForm(final String url, final Map<String, Object> form, final Charset charset, final boolean isEncodeParams) {
|
||||
return urlWithForm(url, UrlQueryUtil.toQuery(form, charset), charset, isEncodeParams);
|
||||
return urlWithForm(url, UrlQueryUtil.toQuery(form, null), charset, isEncodeParams);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -0,0 +1,23 @@
|
||||
package org.dromara.hutool.http;
|
||||
|
||||
import org.dromara.hutool.core.util.CharsetUtil;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class Issue3536Test {
|
||||
|
||||
@Test
|
||||
public void urlWithFormUrlEncodedTest() {
|
||||
final String url = "https://hutool.cn/test";
|
||||
final Map<String, Object> paramMap = new HashMap<>();
|
||||
paramMap.put("redirect_uri", "https://api.hutool.cn/v1/test");
|
||||
paramMap.put("scope", "a,b,c你");
|
||||
|
||||
final String s = HttpUtil.urlWithFormUrlEncoded(url, paramMap, CharsetUtil.UTF_8);
|
||||
Assert.assertEquals("https://hutool.cn/test?scope=a,b,c%E4%BD%A0&redirect_uri=https://api.hutool.cn/v1/test", s);
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user