【避坑点】json返回数据为?????

参考博客:

https://blog.csdn.net/huangfan322/article/details/53219577
这位大佬罗列了比较详尽的字符乱码的情况,对症下药即可药到bug除

前情介绍:

调用外部接口,获取json,需要设置contentType为utf-8格式,否则会出现乱码,依次排查,发现工具类调用post请求时,创建HttpPost对象时,未对该contentType进行设置,导致字符集不一致,而造成乱码

解决方案:

public static HttpUtils post(String url) {
 	return create(new HttpPost(url));
}
private static HttpUtils create(HttpRequestBase request){
    HttpUtils httpUtils = newHttpUtils(request);
    httpUtils.setConnectionRequestTimeout(600000);
    httpUtils.setConnectTimeout(600000);
	//这句代码的添加解决了???的问题    
    httpUtils.setContentType(ContentType.APPLICATION_JSON);
    return httpUtils;
}
上一篇:https中文乱码问题


下一篇:从源码研究实现Java发送get和post请求