get的提交方式式怎么固定死成get

    浏览器将数据(假设为“中国”)發送给服务器的时候将数据变成0101的二进制数据(假设为98 99)时必然要查码表,浏览器以哪个码表打开网页浏览器就以哪个码表提交数据。数据到达服务器后数据(98 99)要封装到request中,在servlet中调用Request的getParameter方法返回的是字符串(“中国”)方法内部拿到数字后要转成字符,一定要查碼表由于request的设计者是外国人,所以默认查的是他们常用的ISO8859-1这就是请求数据产生乱码的根源。

二:form在前台以get方式提交数据:

   get方式提交的數据依然是浏览器用什么码表打开就用什么码表发送不同的是,以get方式提交数据时request设置编码无效。即使设置了UTF-8还是会去查ISO8859-1得到(? ),要解决这个问题需要拿着(?)反向查ISO8859-1,拿到(98 99)后再去查正确码表。



//以get方式提交表单

三:提交数据中文乱码问题总结:

1.如果get的提交方式式为post想不乱码,只需要设置request对象的编码即可

2.如果get的提交方式式为get,设置request对象的编码是无效的想不乱码,只能手工转换

3.get方式的乱码,还可以通过更改服务器配置的方式实现更改Tomact的conf目录下的server.xml文件。

四:最后的最后提一个小细节:URL地址后面如果跟了中文數据,一定要经过URL编码表单提交的参数有中文数据,浏览器会自动帮我们编码但如果是通过链接直接带中文参数,浏览器是不会帮我們编码的这时想通过上述第二种方式解决中文乱码问题就时灵时不灵了,应该通过URLEncoding.encode(,"UTF-8")先编码

求方式为GET如果网页中的<form>表单元素的method属性被设置为“GET”,浏览器提交这个FORM表单时生成的HTTP请求消息的请求方式也为GET

你对这个回答的评价是?

我要回帖

更多关于 get的提交方式 的文章

 

随机推荐