Url encode&decode问题
2010-08-10 15:29
316 查看
今天做分页功能遇到这样子的问题:
表单用get方法传含有"%"字符参数,返回页面的链接中包含该参数,点击该链接出现:
org.apache.tomcat.util.http.Parameters processParameters
Warning: Parameters: Character decoding failed. Parameter skipped.
java.io.CharConversionException: EOF
当get方式提交表单时 "%"会被转换成"%25",而在把参数写回页面的链接时,并没有做相关的encode.
另外发现Firefox和IE的状态栏显示的url有点不同:
在Firefox中,状态栏提示的url是不是a标签中href的字面值,应该经decode过的url,
而在IE中,状态栏提示的就是a标签中href的字面值。
如同样的 <a href="http://localhost:8080/a/action.do?name=%251&p=2">test encoding</a>
在FireFox的状态栏显示的是: http://localhost:8080/a/action.do?name=%1&p=2, 在IE中是:http://localhost:8080/a/action.do?name=%251&p=2
当然,点击该链接,地址栏中的地址都就是http://localhost:8080/a/action.do?name=%251&p=2一样的了。
表单用get方法传含有"%"字符参数,返回页面的链接中包含该参数,点击该链接出现:
org.apache.tomcat.util.http.Parameters processParameters
Warning: Parameters: Character decoding failed. Parameter skipped.
java.io.CharConversionException: EOF
当get方式提交表单时 "%"会被转换成"%25",而在把参数写回页面的链接时,并没有做相关的encode.
另外发现Firefox和IE的状态栏显示的url有点不同:
在Firefox中,状态栏提示的url是不是a标签中href的字面值,应该经decode过的url,
而在IE中,状态栏提示的就是a标签中href的字面值。
如同样的 <a href="http://localhost:8080/a/action.do?name=%251&p=2">test encoding</a>
在FireFox的状态栏显示的是: http://localhost:8080/a/action.do?name=%1&p=2, 在IE中是:http://localhost:8080/a/action.do?name=%251&p=2
当然,点击该链接,地址栏中的地址都就是http://localhost:8080/a/action.do?name=%251&p=2一样的了。
相关文章推荐
- encodeURIComponent编码 URLDecoder.decode解码乱码的问题
- 前台encodeURIComponent,后台 URLDecoder.decode问题
- encodeURIComponent编码 URLDecoder.decode解码乱码的问题
- encodeURIComponent编码 URLDecoder.decode解码乱码的问题
- Leetcode 535. Encode and Decode TinyURL
- LeetCode-Encode and Decode TinyURL
- python中的编码问题unicode, encode, decode
- Python字符串的encode与decode研究心得乱码问题解决方法
- URL中的特殊字符问题escape,encodeURI,encodeURIComponent
- leetcode题解-535. Encode and Decode TinyURL
- URLEncoder.encode 和 URLDecoder.decode 处理url的特殊参数
- Encode and Decode TinyURL
- Python字符串的encode与decode研究心得乱码问题解决方法
- C++ URL encode/decode (gb2312)
- 535. Encode and Decode TinyURL
- python3 读中文txt文件提示 'gbk' codec can't decode byte 0x80 ...或 'gbk' codec can't encode character '\xX问题
- URLEncoder.encode、URLDecoder.decode、escape、encodeURI、encodeURIComponent、
- JS 字符串编码函数(解决URL特殊字符传递问题):escape()、encodeURI()、encodeURIComponent()区别详解
- encodeURLComponent编码问题
- Python字符串的encode与decode研究心得乱码问题解决方法