1、浏览器往服务器发送的请求主要可分为2种:get、post;delete、head等不赘述。
GET方式:
从浏览器上直接敲地址,最大特点就是参数直接跟在地址后面。
POST方式:表单提交等。
2、访问过程:
浏览器中输入地址 –> 浏览器对中文进行编码 –>发送到服务器 ->服务器进行解码
如何浏览器编码和服务器解码用的字符集不一致就会发生乱码问题。
3、乱码的解决
默认浏览器使用UTF-8编码(IE默认GBK当然可以通过meta标签设置)
服务器(Tomcat)默认使用iso-8859-1解码。Iso-8859-1是不支持中文的,也就是说不做处理,中文是一定乱码的。
POST方式解决:
比如表单提交,在Servlet或者Filter中设置request.setCharacterEncoding("UTF-8");就能很好的解决。
GET方式:单纯设置request.setCharacterEncoding("UTF-8");是没有用的,所以我们把默认的iso-8859-1编码改成UTF-8,在TOMCAT的配置文件的server.xml中更改:
<Connector port="8080"protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"URIEncoding="UTF-8" />
添加URIEncoding=UTF-8
4、Android中访问:
GET方式,通过HttpUrlConnection可以很简单的实现,但是会发现,很容易出现乱码问题。
首先:添加URIEncoding=UTF-8工作完成,还是会发送乱码。
这是因为,上面的访问过程提到浏览器对中文进行编码,这里我们直接发送请求,并没有编码这个过程,所以我们需要自己手动编码,即:
String name =URLEncoder.encode("中国万岁","UTF-8");
这样我们就模拟了浏览器的编码,然后发送至服务器,服务器解码也改成UTF-8了,于是又可以快乐的玩耍了。
分享到:
相关推荐
该资源包含了一个用android访问tomcat服务器的小案例,包括用户注册,和用户登录,以及将myqlz中的数据用listview组件显示出来
解决tomcat中文乱码问题,有详细的解释说明,希望对需要的人有所帮助
android客户端输入用户名密码登录tomcat Servlet服务器(不带数据库版本),数据库版本后续更新中
将cmd编码格式永久改为utf-8,解决部署以后tomcat乱码问题
解决Tomcat乱码的问题
OTA服务器搭建tomcat-7-amlogic.-android
Tomcat乱码问题终极解决办法,乱码问题从此消失。
android客户端向服务器提交请求的中文乱码问题
初学者,想尝试着做一个完整的程序么?那么tomcat必不可少
解决tomcat中文乱码问题.doc,很宝贵的资料。
解决tomcat中文乱码的问题!!!!!! !!!!!!!!!!!!!!!!!!!
jsp网页制作与开发,TOMCAT乱码问题
AndroidHttpClient访问Tomcat双向SSL验证服务器.pdf
Docker容器部署tomcat出现中文乱码.docx
最近几个项目,都出现了乱码问题。某些通过URL来传送、值为汉字的参数,在页面中显示的是乱码,但是在本地开发环境是正常显示的。排除的因素当然就是服务器的设置不当了,但具体是那些原因呢?一般我们所装的linux...
Android与Tomcat远程访问Android与Tomcat远程访问Android与Tomcat远程访问
Tomcat和weblogic中文乱码问题解决方案
部署tomcat下的项目 监控的时候发现 日志中文乱码 ,tomcat 下catalina.out 日志乱码问题处理
android示例代码,从tomcat服务器上下载mp3资源
tomcat配置只能域名访问禁止ip访问 直接替换tomcat里面的server.xml 文件,但是里面的ip要更换你自己的ip