今天在做一个项目时,异步提交传递参数时出现了这个错误。
unable to decode value
故障分析:
传递的参数中含有 - _ . ! ~ * ’ ( )% 等非法字符
真正解决方案:使用encodeURI函数
函数介绍:
实例解析:
var uri = 'https://mozilla.org/?x=шеллы';
var encoded = encodeURI(uri);
console.log(encoded);
// expected output: "https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"
try {
console.log(decodeURI(encoded));
// expected output: "https://mozilla.org/?x=шеллы""
} catch(e) { // catches a malformed URI
console.error(e);
}