Swagger-PHP 部署

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。

1.首先swagger 到底是什么东西呢?

其实就是指的是安装Swagger套件, 然后API代码里写注释, 用Swagger后端程序跑API来提取注释, 生成一个json文件, 再通关Swagger前端来美化,整理JSON数据,在swagger-ui输出这个json注释文件的信息。

就是一个api的管理工具,一种规范,为后端和客户端做便利的一种工具。

Swagger-PHP 部署_第1张图片

2.安装

swagger-ui下载 git clone https://github.com/swagger-api/swagger-ui.git

很多说是在git上下载然后找到dist把里面内容放到你需要的项目下面,但是我看下载的和很多例子对不起来,所以我这里打包准备了一个,可以直接放到项目更目录下面可以取个文件夹叫docs,然后要找到index 这个文件 修改 你默认显示的json文件。

$(function() {var url = window.location.search.match(/url=([^&]+)/);if(url && url.length > 1) {        url = decodeURIComponent(url[1]);      }else{        url = "http://127.0.0.1/swagger/docs/json/swagger.json";      }

因为我这个文件就是中文版的,改中文好像要引入lang/zh-CN.js 这个js 文件

然后就可以访问了http://127.0.0.1/swagger/docs,就出现下面的界面

Swagger-PHP 部署_第2张图片

3.安装 后端 也就是 swagger-PHP

开始的时候因为swagger 有在线编辑编辑好了,然后生成json,然后放到你的json文件下面,用swagger-ui去访问就可以看到,但是如果投入到项目以后这个毕竟不是什么好办法,所以还是需要安装后端,毕竟方便。我借助的是composer,(开始我以为composer是什么东东,还觉得好难啊,无从下手,原来就是一个软件,包管理工具,不过用过还挺好用的)

这个是安装包,cmd 输入composer 出现大大的 composer 说明安装成功了,因为速度很慢,所以可以转换成国内镜像

composer config -g repo.packagist composer https://packagist.phpcomposer.com

这样就OK啦,速度也会快上好几倍然后从composer上面下载 这个 swagger-php

composer requirezircote/swagger-php 执行就可以了就下载下来了,然后项目根目录会增加一个vendor这里面就是所谓的 swagger-PHP

4.接下来就是怎么写注释 生成json 然后 ui 显示

会看到里面好多@SWG 这样的注释(参考最新的文档实例),这些就是文档啦,这个插件会自动提取这些注释然后生成一个json文件,然后ui 就可以 读取出来了。

Swagger-PHP 部署_第3张图片

5.怎么生成json文件呢

在cdm 到这个项目下面 或者项目所在的盘,我在c盘下面试过不能执行,所以在相应位置(逐步进入 dir 列表查看子文件,然后cd 进入)执行这段命令啦,要死了,搞了好久一定不要出错啊关键词有几个那就是标红

php /phpstudynew/www/swagger/vendor/zircote/swagger-php  /bin/swagger/phpstudynew/www/swagger/application/controllers -o  /phpstudynew/www/swagger/docs/json

-o前面是自动获取 整个文件夹下面所有的 注释,后面是生成的路径,也是ui访问的路径,这个默认好像是swagger.json就这样成功了

简单写了下实现swagger的方法,还待学习,总之要看文档学着把文档把例子看好,很多博客可能有时间关系 文档都更新了,所以注释格式会出现错误的现象,所以一定最先去参考文档文档文档。

你可能感兴趣的:(Swagger-PHP 部署)