Deno捆绑包的混淆和压缩

4
在 WebPack 中,当我生成一个 bundle 时,它会对该 bundle 进行混淆和压缩。
deno 中,bundler 生成的代码格式更易读。我没有看到任何混淆或压缩选项。
在 deno 中,我该如何实现混淆和压缩的 bundle?我需要像 WebPack 那样的东西,但不涉及 Visual Studio Code。有哪些选项?我只需使用 node 工具吗?

我看到格式化可以关闭,但与Lisperator UglifyJS相比,这在混淆、压缩和缩小方面还有很大差距。我是否只需要找出在Deno中使用这些工具的工作流程? - Lonnie Best
1
据我所知,由于它不是1.0版本的一部分,因此您必须自己对输出进行缩小/混淆。 - Jankapunkt
@Jankapunkt 是的,在Deno中,你可以编写一个JavaScript文件来控制构建。我只需要弄清楚在该脚本中包含哪个模块以进行缩小等操作。 - Lonnie Best
1
我看到 https://deno.land/x/bundler@0.5.1 上说:“Bundler 目前还不会 使用 --optimize 选项来优化或压缩图像。” - James
1个回答

1

我可以建议的一种方法是使用正则表达式来系统地删除对程序员或检查元素用户有用的任何内容。

我没有最好的例子,但这将删除99%的空格以及所有行。更积极的方法还将大多数用户定义的变量重命名为一堆术语,例如'a','b'或'aB'

const obfuscated = originalCode.replace(/\s+/g, " ").replace(/\n/g, "").replace(/\/\/# sourceMappingURL.*$/, "");

最后一个表达式运行时,会删除有关包括原始文件和导入的信息的内容,如果您将其发送给客户端,则可能会构成安全风险。尽管这个问题是2年前问的,但我希望有人能从中受益。

这是一个开始,但是mangling也是必需的。 - Lonnie Best

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接