响应编码和请求编码及URL编码
⼀.响应编码和请求编码
1.响应编码:服务器发给客户端⽂本内容(html,css等⽂本)之前进⾏对响应体的编码
⼀般在发送响应体代码之前,调⽤response.setContentType("text/html;charset=utf-8")的⽅法即可设置UTF-8编码并且告诉浏览器⾃⼰⽤的是UTF-8编码这两个作⽤
注意:response.setContentType("text/html;charset=utf-8")是服务器发给客户端的情况下,设置编码为UTF-8,⽽不是客户端发给服务器时,将客户端发送的内容⽤UTF-8解码;在线url网址编码解码
2.请求编码:客户端发给服务器请求之前进⾏对地址栏参数或表单内容等的编码
现在⾕歌浏览器已经默认是UTF-8,⽽tomcat8及后的版本都是默认UTF-8来对GET请求参数解码了,但是POST请求参数仍然还是ISO解码;tomcat7及之前不管是GET 还是POST都是ISO来解码;
POST请求参数获取前:request.setCharacterEncoding("utf-8");
⽽GET请求已经不需要了,默认是UTF-8了;
⼀般浏览器发送请求⼀般2种情况:
(1)在地址栏带参数发送请求,现在⾕歌浏览器对参数的编码是UTF-8
(2)在页⾯点击链接或者提交表单⾃⼰填写的内容,但是这个看服务器发给浏览器的页⾯是什么编码的,如果是UTF-8编码,则页⾯所有的链接或表单发送的所有请求编码就是UTF-8;
⼆.URL编码
1.URL编码不是字符编码,它的⽬的是把中⽂等易于在传输过程中丢失字节的这种运输⽅式转换为⽹络运输中适合的⽅式,防⽌运输过程中数据的丢失。
浏览器发送get的请求没有URL编码,表单POST请求是由URL编码的。⼀般服务器会⾃动URL识别并解码。
URL编码和URL解码的⽅法如下:
de("name","utf-8"); URL编码
URLDecoder.decode("name","utf-8"); URL解码
虽然浏览器get的请求没有URL编码,但是我们可以通过以上⽅法的设置,不过html不能写java代码,得到JSP⾥⾯写。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论