Web应用系统中,客户端发送请求到服务器,请求中的字符串参数,在被序列化成 json 过程中有些特殊字符会被空格代替,导致传递到服务器端再解析的时候,原本的输入参数就会被改变。
目前遇到的特殊字符有加号(+)与连接号(&)。
临时解决方案:
前端:定义一个函数,在函数中预先处理,
function EncodeURIFilter(str) {
if(str != null && str != "") {
str = str.replace(/\+/g, "%2B");
str = str.replace(/\&/g, "%26");
}
return str;
}
后端: C# 转码
editingMode = HttpUtility.UrlDecode(editingMode);