我的网址为http://175.24.2.166/download?a=TOP#0;ONE=1;TWO2
。
我应该如何对参数进行编码,这样当我在Servlet中打印参数时,我会得到整个值?目前,当我使用request.getParameter("a")
打印值时,我将输出设为TOP
而不是TOP#0;ONE=1;TWO2
。
答案 0 :(得分:1)
这称为“片段标识符”。
如wiki
中所述由哈希标记#引入的片段标识符是文档URL的可选最后部分。它通常用于标识该文档的一部分。 #之后的部分是客户端的信息。把客户需要的一切都放在这里。
您需要对查询字符串进行编码。
你可以在JavaScript中使用encodeURIComponent()函数对URI组件进行编码。这个函数对特殊字符进行编码。
答案 1 :(得分:1)
您应该像http://175.24.2.166/download?a=TOP%230%3BONE%3D1%3BTWO2
一样对其进行编码。 Java中有很多编码器,您可以尝试使用URLEncoder或some online encoders进行实验