用Charles对请求Map Local后手机上看中文是乱码?
你是Android开发?
你的项目里网络框架用的是volley?
是不是猜得很准?
对,万万没想到问题出在volley上,简单说就是 volley获取从网络来的信息流时会对其进行解码,而解码方式是根据返回数据的header中的content-type来进行的,如果content-type为空,则默认解码方式是iso-8859-1,一个只支持英文和数字的字符集,不支持中文;同时又因为我们正常走接口时返回的数据是带header的,而且会指定content-type是utf-8,所以这时候volley解码不会有问题,但是map local的时候因为数据不带header,所以volley使用了默认的解码方式,导致出现了乱码
解决方式是利用 charles的rewrite功能,替换response内容,把返回结果的content-type替换成utf-8
参考资料:http://www.paincker.com/charles-charset-incorrect
感谢博主
原文:http://www.cnblogs.com/bellkosmos/p/6523366.html