最近有用户使用 Fanly XZH 熊掌号改造插件的时候出现 H5 页面校验未通过的情况,经过查看后发现页面中的所有 js 脚本文件均被强制使用 type="text/rocketscript"格式,而非 type="text/javascript",从而也就导致熊掌号H5 页面改造的熊掌号 ID 声明脚本出现问题。

RocketScript

相信很多站长朋友会使用类似百度云加速的服务,而云加速服务为了更好的提升加速,就会将页面中的 js、css 等文件做压缩处理,同时子凡今天说的将 js 脚本强制修改为 type="text/rocketscript"也包含其中,那么我们该如何来避免这样的情况出现,或者禁止云加速服务修改 js 脚本的 type 修改呢?

1
2
3
4
5
6
7
8
<!--正常的熊掌号ID声明-->
<script src="//msite.baidu.com/sdk/c.js?appid=1536767038796128"></script>
 
<!--被云加速修改后的样子-->
<script data-rocketsrc="//msite.baidu.com/sdk/c.js?appid=1536767038796128" type="text/rocketscript"></script>
 
<!--禁止云加速修改的样子-->
<script src="//msite.baidu.com/sdk/c.js?appid=1536767038796128" type="text/javascript" data-cfasync="false"></script>

使用云加速服务后导致JS 脚本的加载是"text/rocketscript"而非"text/javascript",所以我们可以通过在 JS 脚本内联中添加 data-cfasync="false" 属性即可完美的解决,同时因为熊掌号 ID 声明的 js 引入并没有添加 type="text/javascript"的属性,为了保证其规范化,子凡建议还是可以添加上的。

好啦,简单的记录了一个关于网站使用云加速服务的问题和解决方法,希望可以对某些朋友们有用或者参考吧,当你遇到类似的问题或者页面 js 脚本出现加载失效问题的时候,或许也可以用这样的方法来解决。

除非注明,否则均为泪雪博客原创文章,转载请以链接形式标明本文地址

本文链接:https://zhangzifan.com/cdn-js-type-text-rocketscript.html

发表评论

  1. 小文's blog
    1楼
    小文's blog 7个月前 (12-29)

    熊掌号申明引用后,控制台警告A Parser-blocking, cross-origin script,求解决方案

    • 张子凡
      回复
      张子凡 7个月前 (12-30)
      回复 @小文's blog :目前并未遇见该情况,具体解决方案就不得而知了。
  2. 访客
    2楼
    访客 7个月前 (12-19)

    文章大有看点,支持!

  3. 优质香港空间
    3楼
    优质香港空间 7个月前 (12-15)

    在js 脚本中添加参数识别

  4. 高新技术企业认定
    4楼
    高新技术企业认定 7个月前 (12-15)

    关于Java方面,十窍通了九窍,还一窍不通。。。。。

  5. 联盟大事记
    5楼
    联盟大事记 7个月前 (12-14)

    这个也应可以发到站长论坛,感觉会帮助很多人呢。嘻嘻

    • 张子凡
      回复
      张子凡 7个月前 (12-14)
      回复 @联盟大事记 :我刚刚发现站长社区论坛已经有参考我的文章发过了,哈哈哈
  6. 明月登楼
    6楼
    明月登楼 7个月前 (12-14)

    云加速?是指???

    • 张子凡
      回复
      张子凡 7个月前 (12-14)
      回复 @明月登楼 :包括百度云加速或者类似的都属于,但是并不是说所有的云加速都会修改页面的代码
      • 明月登楼
        回复
        明月登楼 7个月前 (12-14)
        回复 @张子凡 :哦,我还真没有发现 CDN 会更改JS的调用方式!看来以后得注意了!