HttpUrlConnection post 乱码 终极解决方案


今天遇到了java后台模拟http请求,以POST方式传参中文乱码,google了一下,大部分是在打开的HttpURLConnection的输入流的时候设置编码(utf-8),按照设置,试了下并没有解决问题,想了下原理,我本身就是全UTF-8环境,不设置utf-8,应该是也是utf-8的流。 
没办法就自己截取了一个页面post请求看了下,发现其requestHeader是 
("Content-Type","application/x-www-form-urlencoded; charset=UTF-8")。 
所以应该是POST的form没有转码的问题,在后台请求的HttpURLConnection中做如下设置: 

urlConnection.addRequestProperty("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM