服务器项目混淆,压缩和混淆node.js服务端代码

本文介绍了如何对node.js服务端代码进行压缩和混淆,探讨了不同工具如UglifyJS、javascript-obfuscator的使用,并指出存在的问题和局限性,分享了一个接近理想效果的解决方案。
摘要由CSDN通过智能技术生成

压缩和混淆node.js服务端代码

在前端我们有webpack,gulp等构建工具提供了从项目结构搭建到部署打包,基本所有工作流程所需要的都被覆盖到了。

在后台node.js写的服务端却是透明,很多时候我们不愿意交付透明的代码。这个时候就需要对js代码进行压缩混淆。

目的

我有一个

express纯api后台项目,在发布之前我需要对他进行压缩混淆。在开发完成以后我希望执行一个命令就能得到完整,压缩混淆之后的代码。然后一个命令启动,运行,维护等。

方案查找

百度谷歌上网找文章。找到了下面几种方案,但是都没有很好的案例可以参考。

这里列出几个与js混淆,编译,打包相关的库或网站:

混淆

萨满科技-一套JS代码安全问题解决方案。

UglifyJS2 – 仅支持ECMAScript 5,更高的版本需要用Babel转换

编译

bytenode,一个极简的Node.js字节码编译器。

打包

ncc 可以把Node.js项目打包成一个js单文件,支持 TypeScript,动态导入。

pkg 可以把Node.js项目打包成一个二进制的可执行文件,pkg不支持动态导入,但是会将Node本身一起打包,可以实现在没安装Node.js的环境运行。

pmq20/node-packer 也能打包成一个二进制的可执行文件,它的优势在于支持各种形式的require, 也支持C++模块。可惜项目已经两年没更新了,只支持到Node.js 8.3.0, 对于更高版本的支持,请移步slee047/node-packer。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值