温馨提示×

Swagger API如何在Linux中测试

小樊
47
2025-07-21 05:49:53
栏目: 智能运维

在Linux系统中测试Swagger API,可以按照以下步骤进行:

安装Swagger

  • 使用Docker

    1. 安装Docker:
      sudo apt-get update sudo apt-get install -y docker.io sudo systemctl start docker sudo systemctl enable docker 
    2. 拉取并运行Swagger Editor:
      docker pull swaggerapi/swagger-editor:v4.6.0 docker run -d -p 38080:8080 swaggerapi/swagger-editor:v4.6.0 
    3. 拉取并运行Swagger UI:
      docker pull swaggerapi/swagger-ui:v4.15.5 docker run -d -p 38081:8080 swaggerapi/swagger-ui:v4.15.5 

配置和使用Swagger

  • 导入Swagger配置文件
    • 打开Swagger Editor(http://localhost:38080),点击左上角的【File】-【Import File】,选择你的swagger.jsonswagger.yaml文件进行导入。
  • 测试API接口
    • 在Swagger UI界面中,浏览到相应的API接口,点击“TRY IT OUT”按钮,输入必要的参数,发送请求并查看返回结果,以验证API是否按预期工作。

注意事项

  • 确保Swagger UI容器正在运行,并且端口映射正确。
  • 如果需要对Swagger UI进行安全配置,如添加密码保护,可以参考相关文档。

其他测试方法

  • 使用cURL命令行工具
    curl -X GET "http://api.example.com/users" -H "accept: application/json" curl -X POST "http://api.example.com/users" \ -H "accept: application/json" \ -H "Content-Type: application/json" \ -d '{"username":"testuser","email":"test@example.com"}' 
  • 使用HTTPie(更友好的命令行HTTP客户端):
    sudo apt install httpie # Ubuntu/Debian sudo dnf install httpie # Fedora sudo pacman -S httpie # Arch Linux http GET http://api.example.com/users http POST http://api.example.com/users username=testuser email=test@example.com 
  • 使用Postman
    • 下载Postman Linux版本并安装。
    • 导入Swagger/OpenAPI规范文件,创建并发送请求。
  • 使用Insomnia
    • 在Ubuntu/Debian:
      sudo snap install insomnia 
    • 或者使用AppImage:
      wget https://github.com/Kong/insomnia/releases/download/core%402021.5.0/Insomnia.Core-2021.5.0.AppImage chmod +x Insomnia.Core-2021.5.0.AppImage ./Insomnia.Core-2021.5.0.AppImage 
  • 使用Swagger Codegen生成客户端
    wget https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/3.0.25/swagger-codegen-cli-3.0.25.jar -O swagger-codegen-cli.jar java -jar swagger-codegen-cli.jar generate \ -i http://petstore.swagger.io/v2/swagger.json \ -l python \ -o /tmp/python-client 

通过以上步骤,你可以在Linux系统上成功部署和使用Swagger进行API测试。

0