ajax提交返回的url因地址符转义导致链接地址无法访问

问题描述:

为了防止对网站中下载链接信息的抓取,网站中的下载地址的获取换成了通过点击异步获取的方式,其中用到了ajax提交的方式,功能完成后,在返回url地址时发现:如果url链接地址当中含有地址符“&” 会转义为&导致地址无法访问。这是由于& 等字符在XML里,有特殊的意义,所以当AJAX使用xml格式的时候,会自动进行转义。

解决方法:

在获取到链接地址后,运用js替换字符串的amp;为空,保留&即可,如下所示:

$.ajax({
    url:"接收ajax请求的地址",
    data:postdata,
    type:'post',
    cache:false,
    success:function(url){
        url= url.replace(/amp;/g, "");
        w.location = url;
    },
    error: function(){
      w.close();
    }
});

 

你可能感兴趣的:(Web前端)