'+'不会使用解码器解码

时间:2013-07-10 10:44:12

标签: jsp decode

我有2个jsp页面,其中在share.jsp的文本框中输入的值被编码,解码在forwarded.jsp页面中完成。如果在txt框中输入的文本是“xyz +”,那么解码是不正确的,解码结果只是“xyz”,即“+”不会被解除。

两个页面中的页面编码相同:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

片段: -

share.jsp

document.getElementById('hiddenFolderList').value = (encodeURI(document.getElementById('folderId').value,"UTF-8"));

forwarded.jsp

String folders=java.net.URLDecoder.decode(request.getParameter("hiddenFolderList"),"UTF-8");

我还检查了URL Encode and Decode Tool还有“+”没有解码如何逃避/阻止这个?

1 个答案:

答案 0 :(得分:0)

encodeURI javascript函数“encodes special characters, except: , / ? : @ & = + $ # (Use encodeURIComponent() to encode these characters)

您提供的示例页面似乎正常工作......空格被编码为+,因此+ +将被解码为空格。如果你编码+它将变成%2B。