当字符串中含有%,先使用 encodeURI 进行编码,再使用decodeURI解码报错
报错原因:decodeURI不允许参数有%,它会自动把%25转义为%,这个转义后的%导致的报错
解决方法一
在解码decodeURI 之前将%替换为%25
编码:url = encodeURI(encodeURI(url));
解码:
url= url.replaceAll("%","%25");
url= decodeURI(decodeURI(url));
解决方法二
在编码encodeURI之前就将%替换为一个独特的字符串,解码之后再替换回来
编码:
url = url.replaceAll("%","baifenhao");
url = encodeURI(encodeURI(url));
解码:
url= decodeURI(decodeURI(url));
url = url.replaceAll("baifenhao","%");

浙公网安备 33010602011771号