全站编码问题|学习笔记

简介: 全站编码问题

开发者学堂课程【Filte(过滤器)、Listener(监听器):全站编码问题】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/38


全站编码问题

内容:

一.解决全站字符乱码(POSTGET中文编码问题)

二.编写一个页面;

三.添加一个EncodingFilterd过滤器;

四.处理编码问题

 

1.解决全站字符乱码(POSTGET中文编码问题)

乱码问题:

POST请求:

requestsetCharacterEncoding("utf-8")

GET请求:String(reguest.getParameter("xx").getBytes("is0-8859-1"),utf-8");

l响应的乱码问题:

response.setContextType('text/htm;charset-=utf-8").

l基本:在每个Servlet中都要处理乱码问题,所以应该把这个工作放到过滤器中来完成。

 

2.     编写一个页面

示例:

image.png

结果:由于未做任何请求编码处理,测试结果为POSTGET均乱码;

 

3.  添加一个EncodingFilterd过滤器(EncodingFilter.java );

(1)     处理post请求编码问题:

request.setCharacterEncoding ( "utf-8") ;

(2)     处理get请求编码问题:

string usexname= request.getParameter ("usexname" );

username=new string (username.getBytes("ISO-8859-1")"UTF-8");

调包request;

写一个request的装饰类;

在放行时,使用自己的request;

if(req-getMethod () .equals ( GET")){

EncodingRequest er = new EncodingRequest (req) ;

chain.doFilter(er, response) ;

}  else if(req-getMethod ( ) .equals("POST)){

chain.doFilter (request,response) ;

l  注释:写一个自己的request的装饰类,实现相同的接口,删除余下码,将这个接口的所有方法用我们的request传递给构造器,只需要覆盖需要的方法。

 

4.  处理编码问题(EncodingRequest.java

try{

value = new string (value.getBytes ( "iso-8859-1")"utf-8");

} catch (UnsupportedEncodingException e) {

throw new RuntimeException (e) ;

)

return value;

)

总结:只需要将EncodingFilter.javaEncodingRequest.java配在web.前面,之后Servlet中就可以解决任何编码问题。

相关文章
|
9天前
|
API
图片压缩+格式转换免费API接口教程
这是一个免费的图片压缩和格式转换API接口,支持GET和POST请求。请求地址为 `https://cn.apihz.cn/api/img/yasuo.php`,需提供 `id`、`key`、`img` 等参数。返回数据包含处理后的图片URL和其他相关信息。更多详情请参考:https://www.apihz.cn/api/imgyasuo.html
|
7天前
|
前端开发 JavaScript API
取网页纯文本内容免费API接口教程
该API用于获取指定网页的纯文本内容,去除HTML标签、CSS和JS等元素。支持POST和GET请求,需提供ID、Key、URL等参数。请求示例:https://cn.apihz.cn/api/wangzhan/getyuan.php?id=88888888&key=88888888&url=www.apihz.cn&dy=1。返回纯文本数据。
|
4月前
|
JSON 网络协议 JavaScript
站长在线工具箱网站JSON网页工具加解密编码制作网站源码
站长在线工具箱网站JSON网页工具加解密编码制作网站源码
66 2
|
1月前
|
CDN
阿里云国际版CDN网页打不开、页面报错该如何解决?
阿里云国际版CDN网页打不开、页面报错该如何解决?
|
3月前
|
JavaScript 前端开发 Java
JMETER也会遇到加密难题,一并处理中文响应乱码
本文讨论了在JMeter中处理加密数据和中文响应乱码的问题,提供了使用BeanShell后处理器进行AES加密的示例代码,说明了如何将自定义的jar包放入JMeter的lib/ext目录以扩展功能,并给出了解决中文乱码的几种方法。
42 1
JMETER也会遇到加密难题,一并处理中文响应乱码
|
边缘计算 缓存 网络协议
|
负载均衡 网络协议 测试技术
笔记-CDN绕过
CDN绕过
326 0
笔记-CDN绕过
|
API PHP
PHP对接百度API访问自动提交收录SEO
PHP对接百度API访问自动提交收录
588 0
PHP对接百度API访问自动提交收录SEO
|
域名解析 搜索推荐 SEO
一个网站有多个域名,怎么处理对SEO比较友好?
哪些情况下,会出现一个网站多个域名? 1、购买了核心域名(如:fgba.net),同时把小众后缀域名一起买了(如:fgba.cn),网站建立后,希望把小众后缀的域名一起解析到网站上。 2、发现正使用的域名A存在问题,比如一直不收录、不合适、不喜欢,换了新域名B后,仍希望把域名A解析到网站上。 3、域名所有权问题或者业务缘故,导致必须给网站启用新域名,希望老域名被转走之前还可以解析一段时间,传递权重给新域名。
431 0