在CentOS上进行Swagger测试前,需根据测试方式安装对应工具:
sudo yum install docker && sudo systemctl start docker);若通过Node.js安装,需安装Node.js和npm(参考搜索结果中centos swagger兼容性测试部分)。sudo yum install java-1.8.0-openjdk-devel)和Maven(sudo yum install maven)。根据项目类型选择以下方式部署Swagger:
Docker快速部署(推荐):
拉取Swagger UI镜像并运行容器,直接访问界面:
docker pull swaggerapi/swagger-ui:v4.15.5 # 拉取最新镜像 docker run -d -p 8080:8080 -e SWAGGER_FILE=/app/swagger.json -v /path/to/your/swagger.json:/app/swagger.json swaggerapi/swagger-ui:v4.15.5 # 挂载本地文档 浏览器访问http://<CentOS-IP>:8080即可查看Swagger UI。
Spring Boot项目集成(自动生成文档):
在pom.xml中添加Swagger依赖:
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> 创建配置类启用Swagger:
@Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.any()) // 扫描所有接口 .paths(PathSelectors.any()) // 匹配所有路径 .build(); } } 启动项目后,访问http://<CentOS-IP>:8080/swagger-ui.html查看自动生成的文档。
Swagger UI提供了可视化的接口测试功能,步骤如下:
/user/query)。limit、page)。若习惯使用命令行,可通过curl模拟HTTP请求测试接口:
curl "http://<CentOS-IP>:8080/api/users?limit=10&page=1" curl -X POST "http://<CentOS-IP>:8080/api/user/add" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "username=test&password=123456" curl -X POST "http://<CentOS-IP>:8080/api/user/update" \ -H "Content-Type: application/json" \ -d '{"id":1,"name":"New Name","email":"new@example.com"}' 执行后,终端会返回接口的响应结果(如状态码、JSON数据)。为确保接口安全性,可使用以下工具进行扩展测试:
swagger-hacker.py脚本探测接口可用性及潜在漏洞(如未授权访问):python3 swagger-hacker.py -u http://<CentOS-IP>:8080/swagger-ui.html