360自动收录js代码报错的解决办法

talklee

温馨提示:这篇文章已超过1996天没有更新,请注意相关的内容是否还可用!

偶然发现网站会出现两个黄色的小叹号,也就是网站的js报错,查看了一下,一个是因为360自动收录js引起了,另外一个是百度联盟广告引起的报错警告,当然这并不影响什么,只是强迫症的我感觉看上去很不爽(你也觉得不爽是吧,那就对了,这才正常啊)。然后百度了一下,基本都说是引用的js报错,但是百度基本都是地图引起的,大概是酱婶的:

A Parser-blocking, cross site (i.e. different eTLD+1) script, http://api.map.baidu.com/getscript?v=2.0&ak=YOU_TOKEN&services=&t=20170517145936, is invoked via document.write. The network request for this script MAY be blocked by the browser in this or a future page load due to poor network connectivity. If blocked in this page load, it will be confirmed in a subsequent console message.See https://www.chromestatus.com/feature/5718547946799104 for more details.

把其中的“api

<script src="http://api.map.baidu.com/api?v=2.0&ak=YOU_TOKEN"></script>

修改成“getscript

<script src="http://api.map.baidu.com/getscript?v=2.0&ak=YOU_TOKEN"></script>

把其中的“YOU_TOKEN”替换成自己的token值就行了,当然这是csdn博客给出的解决方案,但是我们报错的并不是百度地图,所以对我来说也就没有什么L用了。(L用啥意思你说你不知道?百度下吧亲,emmmmm我还真百度了,没有答案,好吧,告诉你把L用就是卵用的意思,恩,就比如这段文字并没什么卵用,你可以不看的......)

360自动收录js代码报错的解决办法 第1张

问题并没有解决,所以还得继续找啊,终于在大象笔记的博客上找到了解决的办法,感谢大神!

方法如下:首先去360站长平台,找到属于自己的自动收录js代码:

<script>(function(){
var src = (document.location.protocol == "http:") ? "http://js.passport.qihucdn.com/11.0.1.js?YOUR_KEY":"https://jspassport.ssl.qhimg.com/11.0.1.js?YOUR_KEY";
document.write('<script src="' + src + '" id="sozz"><\/script>');
})();
</script>

以上代码是我的,其中“YOUR_KEY”替换成你自己的KEY值。每个人的都不一样,别弄错了。

以下引用“大象笔记”(传送门,点击可以直达该博客)的原文,因为有些我也不明白,但是替换之后的确不报错了,至于有没有效果,我也不确定,至少我目前在用,用之前请自行斟酌吧:

由于 360 自动收录默认的 js 代码使用 document.write, 所以在 chrome 会直接报错。修改成 document.body.appendChild

<!-- 360 自动收录 -->
<script>(function(){
    var s3=document.createElement('script');
    s3.id='sozz';
    s3.src='https://jspassport.ssl.qhimg.com/11.0.1.js?YOUR_KEY';
    document.body.appendChild(s3);
  })();
</script>

事情还没有完,其加载的 js 里是这样一段代码,还是包含了 document.write ...

document.write('<script charset="utf-8" src="https://s.ssl.qhres.com/ssl/ab77b6ea7f3fbf79.js"></script>')

360 的程序师真是不行啊。。。我手动获取了 ab77b6ea7f3fbf79.js 的代码,如下:

(function(e){function t(e){var t=location.href,n=t.split("").reverse(),r=e.split(""),i=[];for(var s=0,o=16;s<o;s++)i.push(r[s]+(n[s]||""));return i.join("")}var n=/([http|https]:\/\/[a-zA-Z0-9\_\.]+\.so\.com)/gi,r=e.location.href;if(r&&!n.test(r)&&window.navigator.appName){var i="//s.360.cn/so/zz.gif",s=document.getElementById("sozz"),o=s.src.split("?")[1],u=t(o),a=new Image;r&&(i+="?url="+encodeURIComponent(r)),o&&(i+="&sid="+o),u&&(i+="&token="+u),o&&(a.src=i)}})(window);

逻辑很简单,就是加载一个 gif 图片,后面缀上当前 URL 和网站标识 (第一端代码里的 YOUR_KEY)所以,解决方法就是把下面这段代码里的 YOUR_KEY 替换成自己的,然后贴到网页里就可以了。

<script>
(function(e){function t(e){var t=location.href,n=t.split("").reverse(),r=e.split(""),i=[];for(var s=0,o=16;s<o;s++)i.push(r[s]+(n[s]||""));return i.join("")}var n=/([http|https]:\/\/[a-zA-Z0-9\_\.]+\.so\.com)/gi,r=e.location.href;if(r&&!n.test(r)&&window.navigator.appName){var i="//s.360.cn/so/zz.gif",o="YOUR_KEY",u=t(o),a=new Image;r&&(i+="?url="+encodeURIComponent(r)),o&&(i+="&sid="+o),u&&(i+="&token="+u),o&&(a.src=i)}})(window);
</script>

以上就是原文,所以最终的代码就是(怕你们看不清,给你们格式化以下):

<script>(function(e) {
    function t(e) {
      var t = location.href,
      n = t.split("").reverse(),
      r = e.split(""),
      i = [];
      for (var s = 0,
      o = 16; s < o; s++) i.push(r[s] + (n[s] || ""));
      return i.join("")
    }
    var n = /([http|https]:\/\/[a-zA-Z0-9\_\.]+\.so\.com)/gi,
    r = e.location.href;
    if (r && !n.test(r) && window.navigator.appName) {
      var i = "//s.360.cn/so/zz.gif",
      o = "YOUR_KEY",
      u = t(o),
      a = new Image;
      r && (i += "?url=" + encodeURIComponent(r)),
      o && (i += "&sid=" + o),
      u && (i += "&token=" + u),
      o && (a.src = i)
    }
  })(window);</script>

这回看的清晰了吧,用的时候复制压缩的就行,把其中的“YOUR_KEY”替换成自己的KEN值就行了。

OK大功告成,只是,百度联盟的报错警告没有解决,等等吧,解决后第一时间放出来!

文章版权声明:除非注明,否则均为李洋个人博客原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (有 12 条评论,10631人围观)
网友昵称:情感咨询
情感咨询 V 游客 Google Chrome 67.0.3396.99 Windows 7 x64 6楼
2019-03-21 来自广东 回复
文章不错,写的很好!
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2019-03-22 来自上海 回复
@情感咨询 谢谢支持!贵站很漂亮的说~
网友昵称:楚狂人
楚狂人 V 游客 Google Chrome 63.0.3239.132 Windows 10 x64 地板
2019-01-06 来自天津 回复
功力不凡,美观大方
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2019-01-07 来自天津 回复
@楚狂人 嗯嗯,人才真多啊。
网友昵称:论情博客
论情博客 V 游客 Google Chrome 70.0.3538.110 Android 8.0.0 凉席
2019-01-04 来自天津 回复
很好很强大,准备入手入手
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2019-01-07 来自天津 回复
@论情博客 入手什么?
网友昵称:小白1
小白1 V 游客 Google Chrome 63.0.3239.132 Windows 10 x64 板凳
2018-11-07 来自广东 回复
大佬好!!!!
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2018-11-09 来自天津 回复
@小白1 你好,不用这么客气的
网友昵称:小白
小白 V 游客 TheWorld Browser Windows 7 x64 椅子
2018-11-05 来自上海 回复
360收录还是很不错的
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2018-11-05 来自天津 回复
@小白 嗯嗯,一直再用,只是js报错看着挺不正规的!
网友昵称:情感口述
情感口述 V 游客 Google Chrome 63.0.3239.132 Windows 7 x64 沙发
2018-11-01 来自上海 回复
360一个收录都木的了
网友昵称:talklee
talklee V 博主 Sogou Explorer Windows 7 x64
2018-11-02 来自天津 回复
@情感口述 那你可以试试这个了

目录[+]