|
12 | 12 | - 🎨 现代化 Web 演示界面 |
13 | 13 | - 📦 支持打包成二进制文件,无需安装 Node.js |
14 | 14 |
|
| 15 | +## 系统要求 |
| 16 | + |
| 17 | +- **Chrome 浏览器**: 系统需要安装 Chrome 浏览器(Puppeteer 依赖) |
| 18 | +- **Node.js**: 从源码运行需要 Node.js >= 18.0.0 |
| 19 | +- **操作系统**: 支持 Windows、Linux、macOS |
| 20 | + |
15 | 21 | ## 快速开始 |
16 | 22 |
|
17 | 23 | ### 方式一:使用二进制文件(推荐) |
|
26 | 32 |
|
27 | 33 | 3. 直接运行二进制文件: |
28 | 34 | ```bash |
29 | | - # Windows |
| 35 | + # Windows - 默认端口启动 |
30 | 36 | ./pup-sniffer-win.exe |
31 | 37 |
|
32 | | - # Linux/macOS |
| 38 | + # Windows - 指定端口启动 |
| 39 | + ./pup-sniffer-win.exe -port 8080 |
| 40 | + |
| 41 | + # Linux/macOS - 默认端口启动 |
33 | 42 | ./pup-sniffer-linux |
34 | 43 | ./pup-sniffer-macos |
| 44 | + |
| 45 | + # Linux/macOS - 指定端口启动 |
| 46 | + ./pup-sniffer-linux -port 8080 |
| 47 | + ./pup-sniffer-macos -port 8080 |
| 48 | + |
| 49 | + # 查看帮助信息 |
| 50 | + ./pup-sniffer-win.exe --help |
35 | 51 | ``` |
36 | 52 |
|
37 | 53 | ### 方式二:从源码运行 |
|
43 | 59 |
|
44 | 60 | 2. 启动服务: |
45 | 61 | ```bash |
| 62 | + # 默认端口启动(自动查找可用端口,从57573开始) |
46 | 63 | npm start |
| 64 | + |
| 65 | + # 或直接使用 node 命令 |
| 66 | + node server.cjs |
| 67 | + |
| 68 | + # 指定端口启动 |
| 69 | + node server.cjs -port 8080 |
| 70 | + |
| 71 | + # 查看帮助信息 |
| 72 | + node server.cjs --help |
47 | 73 | ``` |
48 | 74 |
|
49 | | -服务将在 http://localhost:57573 启动 |
| 75 | +服务默认在 http://localhost:57573 启动(如果端口被占用会自动查找下一个可用端口) |
50 | 76 |
|
51 | 77 | ## 构建二进制文件 |
52 | 78 |
|
@@ -185,10 +211,16 @@ npm run build:macos-arm |
185 | 211 |
|
186 | 212 | ## 使用示例 |
187 | 213 |
|
| 214 | +**注意**:以下示例使用默认端口 57573,如果您使用了 `-port` 参数指定了其他端口,请相应调整 URL 中的端口号。 |
| 215 | + |
188 | 216 | ### 基本嗅探 |
189 | 217 |
|
190 | 218 | ```bash |
| 219 | +# 默认端口 |
191 | 220 | curl "http://localhost:57573/sniffer?url=https://example.com/play" |
| 221 | + |
| 222 | +# 自定义端口(如果使用 -port 8080 启动) |
| 223 | +curl "http://localhost:8080/sniffer?url=https://example.com/play" |
192 | 224 | ``` |
193 | 225 |
|
194 | 226 | ### 多链接嗅探 |
@@ -220,19 +252,31 @@ curl "http://localhost:57573/fetCodeByWebView?url=https://example.com" |
220 | 252 | ## 测试 |
221 | 253 |
|
222 | 254 | ```bash |
223 | | -# 测试 Sniffer 类 |
| 255 | +# 运行测试脚本 |
224 | 256 | npm test |
225 | | - |
226 | | -# 测试服务器接口(需要先启动服务) |
227 | | -npm run test:server |
228 | 257 | ``` |
229 | 258 |
|
| 259 | +**注意**: 测试前请确保服务器已启动 (`npm start`)。 |
| 260 | + |
| 261 | +## 命令行参数 |
| 262 | + |
| 263 | +| 参数 | 说明 | 示例 | |
| 264 | +|------|------|------| |
| 265 | +| `-port <端口号>` | 指定服务器端口号 (1-65535) | `-port 8080` | |
| 266 | +| `-h, --help` | 显示帮助信息 | `--help` | |
| 267 | + |
| 268 | +**端口说明**: |
| 269 | +- 如果不指定端口号,程序将从 57573 开始自动查找可用端口 |
| 270 | +- 如果指定的端口被占用,程序会报错并退出 |
| 271 | +- 端口号必须在 1-65535 范围内 |
| 272 | + |
230 | 273 | ## 环境变量 |
231 | 274 |
|
232 | 275 | | 变量 | 说明 | 默认值 | |
233 | 276 | |------|------|--------| |
234 | | -| PORT | 服务端口 | 57573 | |
235 | | -| HOST | 服务主机 | 0.0.0.0 | |
| 277 | +| HOST | 服务主机地址 | 0.0.0.0 | |
| 278 | + |
| 279 | +**注意**: 端口配置请使用 `-port` 命令行参数,不支持通过环境变量设置端口。 |
236 | 280 |
|
237 | 281 | ## 注意事项 |
238 | 282 |
|
@@ -262,10 +306,10 @@ npm run test:server |
262 | 306 |
|
263 | 307 | ## 开发 |
264 | 308 |
|
265 | | -项目采用 ESM 模块化开发,主要文件: |
| 309 | +项目采用 CommonJS 模块化开发,主要文件: |
266 | 310 |
|
267 | | -- `sniffer.js`: 核心嗅探类 |
268 | | -- `server.js`: Fastify 服务器 |
| 311 | +- `sniffer.cjs`: 核心嗅探类 |
| 312 | +- `server.cjs`: Fastify 服务器 |
269 | 313 | - `test.js`: 测试脚本 |
270 | 314 | - `package.json`: 项目配置 |
271 | 315 |
|
|
0 commit comments