预览与调试开关——开发调试 + TauriApi 启用
开发调试开关
配置页面里有一个叫"开发调试"的复选框。作用:
预览窗口和最终打包的 APP 都会启用浏览器开发者工具(F12 / 右键检查)。
打开后能做什么
| 操作 | 方法 |
|---|---|
| 打开 DevTools | 预览窗口右键 → 检查,或按 F12 |
| Console 控制台 | 查看 JS 报错、调试输出、执行代码 |
| Network 面板 | 查看网络请求、排查加载问题 |
| Elements 面板 | 检查 DOM 结构、写 CSS 过滤元素的 selector |
| Application 面板 | 查看 localStorage / cookies / SessionStorage |
什么时候开
| 场景 | 建议 |
|---|---|
| 首次打包一个新网站 | ✅ 开,确认页面渲染正常 |
| 写 CSS 过滤元素 / JS 注入 | ✅ 开,调试选择器和脚本 |
| 打包产物已稳定 | ❌ 关,减少攻击面、用户体验更干净 |
| 发布给他人使用 | ❌ 关(强烈建议),不要把 DevTools 暴露给用户 |
安全边界
发布给他人使用的 APP 一定关掉开发调试。否则用户可以按 F12 打开 DevTools,查看你的 JS 注入脚本、localStorage 数据等——对私密项目是个安全隐患。
TauriApi 开关
另一个叫"TauriApi"的复选框。作用:
启用后,打包的 APP 内部 JS 可以调用 Tauri 提供的系统级 API。
能用哪些 API
启用 TauriApi 后,JS 里可以 import 或 window.__TAURI__ 调用:
| 模块 | 能力 |
|---|---|
@tauri-apps/plugin-fs | 文件系统操作(读写本地文件) |
@tauri-apps/plugin-dialog | 文件选择对话框(让用户选文件) |
@tauri-apps/plugin-http | 发 HTTP 请求(绕过 CORS 限制) |
@tauri-apps/plugin-shell | 执行系统命令 |
@tauri-apps/api/window | 窗口控制(置顶、移动、最小化) |
@tauri-apps/api/event | 事件通信(JS ↔ Rust) |
downloadFile | PakePlus 特有的下载文件接口 |
executeCommand | PakePlus 特有的执行命令接口 |
openWindow | PakePlus 特有的打开新窗口接口 |
什么时候开
| 场景 | 建议 |
|---|---|
| 纯网页壳(只是把网站独立出来) | ❌ 关,不需要系统 API |
| 需要文件下载功能 | ✅ 开,用 downloadFile |
| 需要调用系统命令 | ✅ 开,用 executeCommand |
| 需要绕过 CORS 发请求 | ✅ 开,用 plugin-http |
| 从 JS 注入脚本里调用 | ✅ 开,JS 注入脚本能直接 import |
安全注意
TauriApi 开关相当于给了 JS 脚本"操作本地系统"的能力。如果你的 JS 注入脚本或打包的网页代码有恶意行为(无论是你自己写的还是目标网站里的),TauriApi 开启后可能导致:
- 读写本地敏感文件
- 执行任意系统命令
- 访问本地文件系统
只在你完全信任 JS 代码来源时开启 TauriApi。
预览按钮 vs 发布按钮
两个按钮容易混淆:
| 按钮 | 作用 | 耗时 | 产物 |
|---|---|---|---|
| 预览 | 打开预览窗口查看效果 | 瞬间 | 临时预览进程,关闭即销毁 |
| 发布 | 正式打包(云端或本地) | 30 秒 ~ 10 分钟 | 可安装的 .exe / .dmg / .apk 等 |
推荐流程
- 填写完配置
- 开着开发调试 → 点预览
- 在预览窗口里检查:页面渲染正常、JS 注入脚本执行了、CSS 过滤元素生效了
- 关开发调试(如果是发布用的 APP)
- 点发布 → 云端或本地打包
- 用打包后的安装包安装测试
脚本文件字段
配置页面里还有一个"脚本文件"输入框,指向一个本地 JS 文件。这个 JS 会在 APP 启动时自动注入执行——不需要开开发调试、不需要开 TauriApi(除非脚本里要用系统 API)。
这是 PakePlus 的"原子弹级功能",详见 JS 注入基础。