b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

前台用url传值中文后台用IE浏览器接收参数

电脑杂谈  发布时间:2021-02-05 12:05:53  来源:网络整理

前台使用url传递中文值,后端使用request.getParameter接收参数。在Firefox,Chrome和其他浏览器中没有问题。但是使用IE浏览器时,中文参数会出现乱码。

IE,Firefox和Chrome浏览器对URL的处理方式不同。浏览器在传输URL时必须对URL进行编码。 IE默认以UTF-8传输,而Firefox绝对未以UTF-8编码。 ,它可能采用ISO-8859-1编码,但Chrome似乎采用GBK编码。

如果未处理中文参数,则在每个浏览器以自己的编码方法将中文字符传输到服务器后,会出现各种编码方法,但是服务器只能使用一种编码方法对接收到的URL进行编码。解码。在这种情况下,将URl与中文一起使用时,使用与服务器使用相同编码方法的浏览器将不会出现问题,而其他浏览器也会出现问题。

解决方案:

url火狐浏览器页面传中文乱码_火狐浏览器url中文乱码_火狐浏览器url中文乱码

我们可以在传递参数之前对它们自己进行编码,然后在获得参数时对其进行解码。这样,就可以得到我们想要的中文参数,并且可以很好地处理不同浏览器中的兼容性问题!

具体示例:

JSP页面:

var newUrl =“ checkLogin / lessonClassList?userName = Zhang San”;

newUrl = encodeURI(newUrl); //编码

$(“#dg”)。datagrid(“ options”)。url = newUrl;

$(“#dg”)。datagrid(“ reload”);

JAVA背景:

url火狐浏览器页面传中文乱码_火狐浏览器url中文乱码_火狐浏览器url中文乱码

Stringname = request.getParameter(“ userName”);

字符串u_name = .URLDecoder.decode(name,“ UTF-8”); //解码

u_name =新字符串(u_name.getBytes(“ iso-8859-1”),“ utf-8”);

这样,我们得到的u_name是普通的中文参数,并且可以很好地处理不同浏览器中的兼容性!


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-353852-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...