工作中用到Angular传递文件路径的情况,一开始报错不知道原因,后来发现因为传递路径中“/”太多,路径识别错误,就传不回去java后台了,因此我用了网上的方法进行转义,却发现ts里replace方法每次只能转换一个,而且使用“%25”转义后传到后台却只有个“%”,不过我也没有深究为啥没变%25。
this.oldpath.replace("/", "%25");
this.n = this.oldpath.split("/").length - 1;
let s = this.oldpath;
for (let i = 0 ; i < this.n; i++){
s = s.replace("/", "%25");
}
this.oldpath = s ;
console.log("转义后路径+++++" + this.oldpath);
java后台还原原路径:
oldpath = oldpath.replace("%", "/");