当前位置:首页 >> 技术分享 >> 详情
sousuo
sousuo

对JS进行压缩、加密的步骤和方法

上传时间:2020-07-28             浏览次数:74

做的网站项目经常很容易被人仿站,心里会觉得不爽,所以不少人都希望给JS之类的进行加密。我们今天就来聊一聊网页加密的事情。完全的加密不太可能,所以基础的加密就是进行代码的压缩,稍微高级一点的就是进行一个混淆即可。以下是步骤:

一、找到需要加密的js文件,复制一份修改名称进行备份。

这里我们准备把yongyisou.js进行加密操作,所以把备份的数据写成:yongyisou20200728#jason.js 其中20200728代表是2020年7月8日进行备份的,#号后是我的英文名。

那么这里就运用了2个技巧:

(1)文件名里带#,别人就无法通过网址来进行下载了

(2)标注了备份的时间和责任人,就方便进行版本管理

二、打开需要修改的yongyisou.js,对里边的内容进行加密

网上有很多js加密工具,但是有的工具加密之后js就无法使用了。所以我们这里推荐的是这个工具:https://tool.lu/js/  把JS内容复制进去,先后点击"净化"、“加密”、“混淆”、“加密”按钮即可完成。(注意要在混淆之后再次点击一下加密,可以把代码变成1行,方便后续操作)

需要注意的是:

1、自己写的JS加密即可,没有必要对一些插件进行加密

2、如果自定义JS里换行没有写分号“;”,需要加上之后再进行加密:

建议在写JS的时候就要写规范,否则加密出来的JS无法执行,是错误的JS文件。比较容易错误的有两个地方:1、小括号后没有加分号 2、var定义变量,后边忘记写分号。(这个时候加密后的JS就会报错,解决办法看文章末尾)。

三、把加密后的内容,替换加密前的内容即可

刚才是从第18行开始复制过来的,加密后放入到18行即可。加密之后代码基本上很难看出来具体写的逻辑,没有人可以修改了。

后续如果需要修改程序,就先从备份文件里进行修改,之后再进行加密。一定不要在加密之后的文件上修改(一般你也看不懂这个程序)。

附:JS加密后功能异常的解决办法:

有一点是很让人头疼的,就是有的JS书写不规范,用加密工具做出来会报错,主要原因就是一些换行没有写分号(“;”)导致的。所以在修改完之后要审查模式看看页面是否报错,一般是报“ Uncaught SyntaxError: Unexpected identifier ……”的错误。

解决办法是:

加密过程中,点击净化之后的代码,复制到DreamWeaver中(其他会检查JS的编辑器也可以)。如果报错就表示有回行的地方没有写分号。找到这个位置,加上分号就行了。

比如以下的JS语句,就要注意

$(window).scroll(function(){

       var a=1;

 });

var语句后边的分号不能省略;最后的那个小括号的分行不能省略。

0371-56789390
公司地址

郑州市花园路东风路向西300路南弘熹台22层

联系我们