最近在通过url在传参时将参数进行转义,但是参数中一些特殊符号(如:“,&,' 等)被转义了,如下图展示:
转义之后就造成在传递后台参数时将 “quot;” 参数传递过去了(理论上应该传递 “双引号”才对),造成接口查询不到数据。
下面对部分特殊符号尽心处理:
let specialList = [ {mark:'"', trans: '"'}, {mark:'<', trans: '<'}, {mark:'>', trans: '>'}, {mark:'&', trans: '&'}, {mark:''', trans: '\''}, {mark:'©', trans: '©'}, {mark:'®', trans: '®'} ] transName = (value)=>{ for (const item of specialList) { if (value.indexOf(item.mark) != -1) { reg = new RegExp(item.mark,"g"); value = value.replace(reg, item.trans) } } return value } let urlParams = routeProvider.getUrlParams(); $scope.fileName = transName(urlParams.name)
标签:url,value,mark,item,转译,trans,reg,特殊字符 From: https://www.cnblogs.com/bzpurple/p/16858574.html