js页面是gb2312编码,怎么解决jQuery.ajax中文乱码问题?(不能转换页面编码,否则会导致更多问题)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js页面是gb2312编码,怎么解决jQuery.ajax中文乱码问题?(不能转换页面编码,否则会导致更多问题)相关的知识,希望对你有一定的参考价值。
js页面是gb2312编码,怎么解决jQuery.ajax中文乱码问题?(不能转换页面编码,否则会导致更多问题)
参考技术A 前端:var str = "张三";
$.ajax(
type:"",
url:"who.action",
data:"name",encodeURI(encodeURI(str)),
success: ,
dataType
服务器端:
String name = request.getParameter("name");
name = java.net.URLDecoder.decode("name", "gb2312");
关键是你要发送的数据要通过两层的enCodeURI()函数转换。 参考技术B 你要使用 encodeURI("转化对象") 然后后台再转化回来就可以了 参考技术C ajax处理页面也需要设置页面编码为gb2312本回答被提问者采纳
如何解决用 Beautiful Soup 抓取网页却得到乱码的问题
参考技术A 楼上所说的编码问题只是一个方面,使用GB18030确实能够解决。另一个造成乱码的原因是压缩格式。很多规模较大的网站都是以gzip的压缩格式输出页面的,所以在用BS解析之前需要先判断该网页是否经过压缩,如果经过压缩则先进行解压操作。本回答被提问者采纳 参考技术B 可能编码识别错了,建议创建soup对象时手动把正确的编码传过去,国内的网站编码主要是gb2312和utf8,对于大部分非utf8编码中文网站可以用gb18030通吃>> encoding = "gb18030"
>> soup = BeautifulSoup(page, fromEncoding=encoding)
以上是关于js页面是gb2312编码,怎么解决jQuery.ajax中文乱码问题?(不能转换页面编码,否则会导致更多问题)的主要内容,如果未能解决你的问题,请参考以下文章
vs2017 cshtml 文件编码怎么设置为 gb2312