request.getParameter(String param)bug?

时间:2013-07-04 15:46:41

标签: java servlet-3.0

getQueryString()

给出

cid=1&params=zDmrLGXJ1DboOuqBn2062Z%2BQmQ4w7ODNGAfZL4L8rpk%3D

getParameter(PARAM_NAME)

给出

zDmrLGXJ1DboOuqBn2062Z+QmQ4w7ODNGAfZL4L8rpk=

%3D.发生了什么?

我使用URLEncoder.encode(url, "UTF-8")创建参数

2 个答案:

答案 0 :(得分:3)

%3D是参数字符串末尾的等号(=)。它与%2B相同,后者被其解码值替换:加号(+)符号。

答案 1 :(得分:1)

URLEncoder隐藏任何special characters(@,=,+等),以便它可以用作网址。当getParameter()返回原始查询字符串时,getQueryString()会将字符串转换回原来的字符串。