单文件 exe
Windows 10 / 11 · x64
一个文件,内含 Node 运行时,目标机器不装 Node 也能跑。 双击就是一个应用窗口:没有黑窗口、没有地址栏、没有标签页,关掉窗口就退出程序。
下载 APITools.exe放到一个普通文件夹里再双击(别放 C:\Program Files): 数据目录建在 exe 自己旁边,需要写权限。
Windows 10 / 11 · x64
一个文件,内含 Node 运行时,目标机器不装 Node 也能跑。 双击就是一个应用窗口:没有黑窗口、没有地址栏、没有标签页,关掉窗口就退出程序。
下载 APITools.exe放到一个普通文件夹里再双击(别放 C:\Program Files): 数据目录建在 exe 自己旁边,需要写权限。
Node ≥ 18 · 无依赖
没有 npm install、没有构建步骤:拿到目录直接跑。 调前端样式不必重新打包,刷新即生效。
# 起服务 + 弹出应用窗口(和双击 exe 一样)
node server.js
# 只起服务,自己用浏览器开 http://127.0.0.1:8721
node server.js --no-window
# 打包成单文件 exe(Windows 上双击 build.bat 就行)
build.bat
下 exe,或者把源码目录放到任意普通文件夹。exe 是单文件,直接发给同事也可以。
双击后会自动打开应用窗口。第一次启动会把示例集合与环境写进 data/,里面「APITools 内置回声」集合全部指向本机接口,不连外网也能试。
打开 GET /api/echo 直接发送,看着响应、断言、耗时都对上;然后切到「压测」标签跑一轮,再点「文档生成」导出一次。
新建集合、把 {{baseUrl}} 指到你的服务,之后所有请求都用变量,环境一换全站跟着换。
| 项目 | 要求 |
|---|---|
| 单文件版 | Windows 10 / 11(x64)。不需要安装 Node,也不需要任何附属目录 |
| 应用窗口 | 本机有 Edge 或 Chrome(Win10/11 自带 Edge,正常都能命中)。两个都没有时会退回系统默认浏览器 |
| 源码版 | Node ≥ 18(打包目标为 Node 22) |
| 浏览器 | 任意现代浏览器,用于打开管理界面 |
| 磁盘 | 单文件版约 55.3 MB;数据目录大小取决于你自己的集合与历史 |
| 网络 | 不需要联网。只有你主动发请求时才会连到目标服务 |
| 账号 | 没有账号系统,也没有云端同步 |
| 参数 | 行为 |
|---|---|
| (不带参数) | 打开应用窗口 —— 推荐,双击就是这个 |
| --window --port 8899 | 应用窗口 + 换端口 |
| --console | 不开应用窗口,改用系统默认浏览器(开发时用,控制台里能看到日志) |
| --no-window | 只起服务,一个窗口都不开(当后台服务用) |
| --port <n> | 换监听端口,默认 8721 |
| --host 0.0.0.0 | 让同网段的其他机器也能访问 |
| --check | 只读自检:验证内嵌资源是否完整、数据目录会落在哪。不监听端口、不写任何文件 |
| --out <file> | 把 --check 的报告写到指定文件 |
打包后的 exe 是窗口程序、没有控制台,所以 --check 的报告会写到它旁边的 check-report.txt;想在命令行直接看,用重定向: APITools.exe --check > report.txt。
exe 没有代码签名,SmartScreen 会拦一次。点「更多信息」→「仍要运行」即可,之后不再提示。
不会。第二次双击会发现端口已被占用,直接把窗口接到已经在跑的那个实例上;开完窗口它自己就退出,不在任务管理器里留一个什么也不干的进程。
关窗后服务最多约 7 秒退出。判定方式是页面每 2 秒打一次心跳,心跳断了 6 秒才算关窗。
为什么不直接盯着浏览器进程:Edge 的"启动器进程"和真正画窗口的进程不是同一个,可能秒退也可能一直活着,拿它当判据会出现"窗口关了、exe 还在"。刷新页面只断几百毫秒,不会被误判。
在 exe(或源码目录)自己旁边的 data/:把 exe 拖到别的文件夹,数据就跟着走。不写 AppData、不写注册表。
这个目录随时可以删——浏览器的那堆缓存不在里面,所以不会有"文件被占用、删不掉"(早期版本恰恰踩过这个坑)。
看 exe 旁边的 data/app.log。窗口程序没有控制台,日志统一落在这个文件里(超过 2 MB 自动清空重来),它会写清启动到哪一步。
换个端口启动即可:APITools.exe --window --port 8899。
因为数据目录建在 exe 旁边,而那个位置需要管理员权限,普通权限下建不出 data/。放桌面、D 盘之类的普通文件夹就行。
不会。程序只监听本机 127.0.0.1,没有遥测、没有云端、没有账号。数据是明文存在本机 json 里的——所以别把 data/ 目录提交到公开仓库(里面的 token 也是明文)。