url传中文参数
2011年09月01日
在做搜索的时候,传参数本来中文参数没什么问题,但是后来中文之间加了一个空格,传递到后台无法显示,sql语句出现缺失现象,没有办法只能用encodeURIComponent在前台页面把空格转换一下(百度和google都是这样转换的,不过百度是gbk,google是utf-8),转的时候转两次encodeURIComponent(encodeURIComponent(goodname)),在后台用
java.net.URLDecoder.decode("要解码的字符串","utf-8"),这里utf-8是必须的,因为这个方法默认就是用此编码方式加密和解密。如果换成其他编码方式绝对是乱码.
注:
如果后台用request.getparameter()的方式取数据的话,前后一定要加密两次,因为request.getparameter()本身就对字符串进行了一次解密,decode的时候又解密了一次.
2011年09月01日
在做搜索的时候,传参数本来中文参数没什么问题,但是后来中文之间加了一个空格,传递到后台无法显示,sql语句出现缺失现象,没有办法只能用encodeURIComponent在前台页面把空格转换一下(百度和google都是这样转换的,不过百度是gbk,google是utf-8),转的时候转两次encodeURIComponent(encodeURIComponent(goodname)),在后台用
java.net.URLDecoder.decode("要解码的字符串","utf-8"),这里utf-8是必须的,因为这个方法默认就是用此编码方式加密和解密。如果换成其他编码方式绝对是乱码.
注:
如果后台用request.getparameter()的方式取数据的话,前后一定要加密两次,因为request.getparameter()本身就对字符串进行了一次解密,decode的时候又解密了一次.