技术实践
JavaScript混淆加密
那么怎么做到我们的源代码,不被别人获取呢,目前常见的做法就是前端压缩混淆,最后生成出来的代码都是a,b,c,d...e,这种字母代替,或者起

今天有个同事问我,前端如何防止别人偷看代码

大概就是,他们开发了个产品,如要申请著作权,然后想把代码保护起来
在前端的话,代码基本都是公开的,在浏览器打开控制台,断点就可以跟踪到需要的参数和变量
那么怎么做到我们的源代码,不被别人获取呢,目前常见的做法就是前端压缩混淆,最后生成出来的代码都是a,b,c,d...e,这种字母代替,或者起来的方式代替
两个在线混淆工具,我见过的最牛逼的
jsfuck

obfuscator

本地混淆,批量处理
常用的是node.js处理,比如vue-cli的框架,vue.config.js,里面只需配置参数,即可完成混淆,也是基于node环境完成
安装javascript-obfuscator
shll
npm install javascript-obfuscator -g
最小化并混淆文件
shell
javascript-obfuscator input_file_name.js
批量操作
shll
javascript-obfuscator ./
执行上面的指令会将当前目录下(包含子目录)的所有.js文件进行最小化并混淆
更多操作
可以通过指定参数设置更多操作:
--ouput a.js:指定输出文件名
--ouput ./output:指定输出目录
【参数说明】