当前位置: 首页 > ai >正文

js文件加密。安装 Terser

单独一个

1、安装

npm install terser --save-dev

2、配置混淆脚本
在 package.json 中添加一个脚本用于混淆代码:

{"scripts": {"obfuscate": "terser src/main.js -o src/main.min.js"}
}

运行

npm run obfuscate

加密整个目录,和单独文件,一次全部,新间js文件terser.js,注意这个是在源文件上加密,加密请把项目单独复制出来

执行node .\terser.js加密

const fs = require('fs');
const path = require('path');
const { minify } = require('terser');// 定义要处理的目录和文件数组
const targets = ['./electron', 'main.js'];// 处理单个目标(目录或文件)
function processTarget(target) {const stat = fs.statSync(target);if (stat.isDirectory()) {traverseDirectory(target);} else if (path.extname(target) === '.js') {processJsFile(target);} else {console.log(`${target} 不是有效的 JS 文件或目录`);}
}// 递归遍历目录并处理 JS 文件
function traverseDirectory(dir) {const files = fs.readdirSync(dir);files.forEach((file) => {const filePath = path.join(dir, file);const stat = fs.statSync(filePath);if (stat.isDirectory()) {traverseDirectory(filePath);} else if (path.extname(file) === '.js') {processJsFile(filePath);}});
}// 处理单个 JS 文件
async function processJsFile(filePath) {try {const code = fs.readFileSync(filePath, 'utf8');const result = await minify(code);if (result.error) {console.error(`Error processing ${filePath}:`, result.error);} else {fs.writeFileSync(filePath, result.code, 'utf8');console.log(`Processed ${filePath}`);}} catch (err) {console.error(`Error reading or writing ${filePath}:`, err);}
}// 开始处理所有目标
targets.forEach(processTarget);
http://www.xdnf.cn/news/3307.html

相关文章:

  • C++负载均衡远程调用学习之TCP连接封装与TCPCLIENT封装
  • 审计专员简历模板
  • 【Hot 100】23. 合并 K 个升序链表
  • 【深度学习新浪潮】小米MiMo-7B报告内容浅析
  • MATLAB中removedelay函数用法
  • 区间贪心 (区间端点处理)
  • llamafactory-cli webui启动报错TypeError: argument of type ‘bool‘ is not iterable
  • 《AI大模型应知应会100篇》第41篇:多轮对话设计:构建高效的交互式应用
  • CentOS 7 下安装 supervisor-3.4.0-1.el7.noarch.rpm 详细步骤
  • QMK固件开发指南:构建您的第一个固件
  • 22.2Linux的I2C驱动实验(编程)_csdn
  • 2024年12月 C/C++(二级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • Qt指南针
  • 9. 深入Spring AI:刨析 ChatMemory
  • 从MCP基础到FastMCP实战应用
  • 攻防世界 - Web - Level 4 | Confusion1
  • qemu学习笔记:QOM
  • AWS CloudFront全球加速利器:解析出海业务的核心优势与最佳实践
  • 2025五一数学建模ABC题选题建议,思路模型分析
  • Hive数据倾斜 常见解决办法
  • 深度学习框架搭建(Vscode/Anaconda/CUDA/Pytroch)
  • 基于单片机的音频信号处理系统设计(三)
  • LangChain简明教程(12)
  • Ubuntu 安装 Cursor
  • donet使用指定版本sdk
  • Python数据分析课程实验-2
  • C#类访问修饰符
  • 经济学和奥地利学派的起源
  • WEB UI自动化测试之Selenium框架学习
  • 面试中系统化地解答系统设计题:通用方法论