Ubuntu上排查Swagger问题的实用流程
一 明确问题与快速自检
二 定位步骤与命令清单
三 常见症状与处理要点
| 症状 | 快速检查 | 处理要点 |
|---|---|---|
| 页面空白或资源 404 | 浏览器开发者工具 Network;容器内静态文件路径 | 确认 dist/index.html 与静态资源存在;Nginx/Apache 正确指向静态目录;容器映射正确 |
| 403 Forbidden | Nginx 配置与目录权限 | 检查 Nginx 启动用户(如 www-data)对文档目录的读权限;修正 location / 配置 |
| 无法跨域 | 浏览器 Console CORS 报错 | 后端或网关开启 CORS;Swagger UI 使用 requestInterceptor 注入 Token 时确保预检通过 |
| 同局域网无法访问 | 服务器多网卡、监听地址、UFW | 确认服务监听 0.0.0.0 而非 127.0.0.1;必要时禁用不使用的网卡;开放防火墙端口 |
| Swagger Editor/UI 启动失败 | 终端报错、依赖缺失 | 重新 npm install;检查 Node 版本;换用稳定版本或 Docker 运行 |
| Spring Boot 集成启动报错 | 启动日志空指针/配置异常 | 核对 Docket 配置、包扫描路径;升级/对齐 springfox/swagger 与 Spring Boot 版本 |
| 接口列表不显示或参数错误 | Console/Network 与后端注解 | 使用 @RequestBody 的接口应为 POST;核对 @ApiOperation、@ApiModel 等注解与路径匹配策略 |
四 不同运行方式的最小排查清单
五 高效提问与进一步排查