如何在ThinkPHP6中使用Swagger

swagger是一種流行的api文檔生成工具,可以幫助開發人員輕松地創建、設計和部署api接口。在本文中,我們將介紹如何在thinkphp6中使用swagger來生成api文檔,并使用swagger-ui來查看和測試api接口。

第一步:安裝Swagger-UI和Swagger-Annotations

要在thinkphp6中使用Swagger,需要安裝Swagger-UI和Swagger-Annotations兩個庫。可以通過composer來安裝它們,只需在項目根目錄下運行以下命令:

composer require zircote/swagger-php composer require swagger-api/swagger-ui 

第二步:在控制器中添加Swagger-Annotations

要在控制器中使用Swagger,需要在控制器的注釋中添加Swagger-Annotations。例如,以下是一個示例控制器和其中使用Swagger-Annotations的示例代碼:

立即學習PHP免費學習筆記(深入)”;

nnotationouteGroup; use thinknnotationouteMiddleware; use thinkController;  /** * @Group("/api/v1") * @Middleware(class="ppmiddlewareToken") */ class UserController extends Controller {     /**     * 用戶列表接口     *     * @SwaggerGet(     *     path="/user/list",     *     summary="獲取用戶列表",     *     tags={"User"},     *     @SwaggerResponse(response="200", description="OK"),     *     @SwaggerResponse(response="401", description="Unauthorized"),     * )     */     public function index()     {         // 代碼邏輯     } }

在上面的代碼中,我們使用了@Group注釋來指定控制器的路由前綴,使用@Middleware注釋來指定控制器中間件。而在index方法中,我們使用了@SwaggerGet注釋來指定GET請求所需的信息,如請求路徑、接口摘要、標簽和響應信息等等。

第三步:生成Swagger文檔

生成Swagger文檔的方法有很多種,包括手動編寫Swagger文檔、使用Swagger編輯器、使用Swagger生成器等等。在這里,我們將使用Swagger-Annotations提供的命令行工具來自動生成Swagger文檔。

在項目根目錄下輸入以下命令:

php think swagger output json > swagger.json 

這將使用Swagger-Annotations中的output命令將Swagger文檔輸出到JSON文件中。

第四步:使用Swagger-UI查看和測試API接口

現在,我們已經生成了Swagger文檔,我們需要將它展示出來。我們可以使用Swagger-UI來查看和測試API接口。

在項目中新建一個目錄public/swagger,將從Swagger-UI官網上下載的所有靜態文件都復制到這個目錄中。然后,我們需要修改index.html文件中的url變量,將其指向我們剛才生成的Swagger文檔。

var url = "../swagger.json";

最后,在瀏覽器中打開http://localhost/swagger即可看到Swagger-UI界面。在這里,您可以瀏覽API接口文檔,測試API接口,并查看API接口的請求和響應信息。

總結:

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享