溫馨提示×

Swagger在Ubuntu上的調試技巧有哪些

小樊
51
2025-06-19 02:01:51
欄目: 智能運維

在Ubuntu上調試Swagger(現通常指的是OpenAPI)主要涉及安裝和配置Swagger UI以及可能的使用場景。以下是詳細的步驟和調試技巧:

安裝Swagger

使用Docker

  1. 安裝Docker

    sudo apt update
    sudo apt install docker.io
    sudo systemctl start docker
    sudo systemctl enable docker
    
  2. 拉取Swagger UI鏡像

    docker pull swaggerapi/swagger-ui
    
  3. 運行Swagger UI容器

    docker run -p 80:8080 -v /path/to/swagger.json:/usr/src/app/swagger.json swaggerapi/swagger-ui
    

    其中,/path/to/swagger.json 是你本地的Swagger JSON文件的路徑。

使用npm

  1. 安裝Node.js和npm

    sudo apt update
    sudo apt install nodejs npm
    
  2. 全局安裝Swagger UI

    sudo npm install -g swagger-ui-express
    
  3. 創建一個簡單的Express應用并集成Swagger UI

    mkdir swagger-demo
    cd swagger-demo
    echo 'const express = require("express"); const swaggerUi = require("swagger-ui-express"); const YAML = require("yamljs"); const app = express(); const swaggerDocument = YAML.load("./swagger.yaml"); app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerDocument)); const PORT = process.env.PORT || 3000; app.listen(PORT, () => { console.log(`Server is running on port ${PORT}`); });' > index.js
    echo 'swagger: \'2.0\' info: title: Sample API description: A sample API to demonstrate Swagger UI version: \'1.0.0\' paths: /users: get: summary: List all users responses: \'200\': description: An array of users schema: type: array items: ref: \'#/definitions/User\' definitions: User: type: object properties: id: type: integer name: type: string' > swagger.yaml
    node index.js
    

調試技巧

  1. 使用Swagger Editor進行調試

    • 下載并解壓Swagger Editor:
      wget https://github.com/swagger-api/swagger-editor/archive/refs/tags/v3.16.1.tar.gz
      tar -xvf v3.16.1.tar.gz
      cd swagger-editor-3.16.1
      npm install
      npm install -g http-server
      http-server -p 8080
      
    • 在瀏覽器中訪問 http://localhost:8080 使用Swagger Editor。
  2. 使用Visual Studio Code進行調試

    • 安裝Node.js擴展。
    • 創建一個調試配置文件 launch.json
      {
        "version": "0.2.0",
        "configurations": [
          {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/app.js",
            "skipFiles": [
              "<node_internals>/**"
            ]
          }
        ]
      }
      
    • 在終端中運行以下命令啟動調試:
      node --inspect-brk app.js
      
    • 在Visual Studio Code中按下F5開始調試。
  3. 自定義JavaScript腳本

    • 在Swagger UI的 wwwroot/swagger-ui/ 目錄下創建一個 custom.js 文件。
    • 編寫自定義函數(例如 authorizeSwagger),用于在獲取token后自動授權Swagger。
    • 使用 InjectJavascript 機制將 custom.js 腳本注入到Swagger UI中間件中,實現自動授權等功能。

通過以上步驟和技巧,你應該能夠在Ubuntu上成功安裝、配置和調試Swagger,并進行API文檔的查看和測試。如果在安裝過程中遇到問題,可以參考相關的官方文檔或社區論壇尋求幫助。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女