1. 程式人生 > >yii2 使用 zircote/swagger-php 進行swagger 搭建

yii2 使用 zircote/swagger-php 進行swagger 搭建

dev 客戶端 引用 官方文檔 -a plink packagist star 域名

網站上關於中文介紹的博客許多東西千篇一律,而且講的很多都浪費了我大量的時間。

然後就準備咬咬牙看看英語文檔:

https://packagist.org/packages/zircote/swagger-php

進行網站進行搭建,使用的是yii2 2.0.12

使用composer 進行安裝

composer require zircote/swagger-php


然後進行下載swagger-ui 這個主要進行一個swagger調試的客戶端,沒有進行後端的交互,他主要是通過一個json進行初始化工作

https://github.com/swagger-api/swagger-ui

然後對這個裏面的dist/index.html進行修改json文件的引用,我是將這個客戶端放到一個獨立的域名下,然後在yii中寫入一個方法生成一個json

define(‘API_HOST‘,(YII_ENV === ‘dev‘)?‘new.rprise.wd.com‘:‘test.com‘);
$b2broot = Yii::getAlias(‘@rprise‘);
$swagger = \Swagger\scan($b2broot);
echo $swagger;exit;

然後將dist/index.html 文件指向這個文件路由

// Build a system
const ui = SwaggerUIBundle({
url: "http://new.rprise.wd.com/user/genswg",    //修改這個位置
dom_id: ‘#swagger-ui‘,
deepLinking: true,


為了避免誤導大家,還是不多說了,最後還是希望大家還是多看看官方文檔

  https://github.com/zircote/swagger-php/blob/HEAD/docs/Getting-started.md  //這裏編寫了代碼的註釋規範

  看到一楞一楞的時候看看這個

  https://bfanger.nl/swagger-explained/#schemaObject

一開始進行搭建代碼生成可能會報錯

比如

@SWG/info not fount 之類是因為沒寫註釋,總之耐心,相信官網文檔,有問題留言一下討論

yii2 使用 zircote/swagger-php 進行swagger 搭建