告诉我跳转失败,自己在火狐测试好多次都没问题。
最后发现是在 前端解析 json解析的时候出问题,在火狐没问题,在谷歌就有问题。
正常应该返回这样:
{"attributes":{},"jsonStr":"{\"attributes\":{},\"msg\":\"xxxxxx\",\"success\":xxxxx}","msg":"xxxxx","success":xxxxx}
谷歌的浏览器的返回的json结果会返回这个:
{"attributes":{},"jsonStr":"{\"attributes\":{},\"msg\":\"xxxxxx\",\"success\":xxxxx}","msg":"xxxxx","success":xxxxx}<div class="xl-chrome-ext-bar" id="xl_chrome_ext_{4DB361DE-xxxx-xxxx-B494-639E489D19ED}" style="display: none;">
<div class="xl-chrome-ext-bar__logo"></div>
<a id="xl_chrome_ext_download" href="javascript:;" class="xl-chrome-ext-bar__option">下载视频</a>
<a id="xl_chrome_ext_close" href="javascript:;" class="xl-chrome-ext-bar__close"></a>
</div>
多出来的div 有个下载视频,全局搜索项目也没有这东西
后来发现谷歌浏览器我安装了迅雷插件,这样:
网上搜到原因是迅雷插件一旦勾选了“可读取和更改网站数据”会将网站的返回结果进行加工处理,形成他们的快速下载链接,这样的话会导致后端返回的结果的格式发生问题,导致js报错。
所以两种解决办法
1 删除迅雷插件,或者关掉
2 把那个div从字符串中删掉
像这样:
let dataClean = data.split('<div class')[0]