Swagger 生成 PHP API 接口文档
Swagger 生成 PHP API 接口文档
标签(空格分隔): php
1、概况
有同学反馈写几十个接口文档需要两天的工作量, 随着多部门之间的协作越来越频繁, 维护成本越来越高, 文档的可维护性越来越差, 需要一个工具来管理这些接口的文档, 并能够充当mock server给调用方使用。
有同学推荐了swagger+easymock,Swagger是一个简单但功能强大的API表达工具。 这里介绍使用swagger-php生成PHP API文档的方法。
2、安装与使用
2.1 安装swagger-php包
git clone https://github.com/zircote/swagger-php.gitcomposer install
// 全局的
composer global require zircote/swagger-php// 项目中
composer global require zircote/swagger-php
2.2 laravel项目安装
使用 L5 Swagger
https://github.com/DarkaOnLine/L5-Swagger
具体安装过程请参考此文档: https://github.com/DarkaOnLin...
2.3 编写API注解
# 创建文件 demo/customer.php
<?php/*** @OA\Info(title="My First API", version="0.1")*/
class Customer
{/*** @OA\Get(* path="/customer/info",* summary="用户的个人信息",* description="这不是个api接口,这个返回一个页面",* @OA\Parameter(name="userId", in="query", @OA\Schema(type="string"), required=true, description="用户ID"),* @OA\Response(* response="200",* description="An example resource"* )* )*/public function info(int $userId, string $userToken){}
}
2.4 生成swagger API 文件
./swagger-php/bin/openapi demo -o ./docs
API 内容如下:
# docs/openapi.yaml
openapi: 3.0.0
info:title: 'My First API'version: '0.1'
paths:/customer/info:get:summary: 用户的个人信息description: '这不是个api接口,这个返回一个页面'operationId: 'Customer::info'parameters:-name: userIdin: querydescription: 用户IDrequired: trueschema:type: stringresponses:'200':description: 'An example resource'
3、展示
git clone https://github.com/swagger-api/swagger-ui.gitcomposer install
直接通过Dockerfile构建、启动项目, 或者使用docker-compose进行服务管理。
version: '2'services:swagger-ui:build: .ports:- "8080:8080"volumes:- ./dist/:/usr/share/nginx/html/restart: on-failure
访问 http://localhost:8080/ 即可到 swagger
编辑器预览界面。
./swagger-php/bin/openapi demo -o ./swagger-ui/dist/
将 api文档输出值swagger ui的根目录下,可通过 http://localhost:8080/openapi.yaml 访问此api文档。
执行 Explore
结果如图:
4、参考资料
- Swagger 生成 PHP restful API 接口文档
- 如何编写基于 Swagger-PHP 的 API 文档
- https://github.com/zircote/swagger-php
- https://github.com/swagger-api/swagger-ui
- Easy Mock
- Laravel(PHP)使用Swagger生成API文档不完全指南
Swagger 生成 PHP API 接口文档相关推荐
- 整合swagger2生成Restful Api接口文档
整合swagger2生成Restful Api接口文档 swagger Restful文档生成工具 2017-9-30 官方地址:https://swagger.io/docs/specificati ...
- php怎么根据接口文档实现功能,CodeIgniter+swagger实现 PHP API接口文档自动生成功能...
一.安装swagger 1.首先需要有composer,没有的自行百度安装 2.下载swagger,打开网站https://packagist.org/packages/zircote/swagger ...
- 芋道 Spring Boot API 接口文档 Swagger 入门
点击上方"芋道源码",选择"设为星标" 做积极的人,而不是积极废人! 源码精品专栏 原创 | Java 2020 超神之路,很肝~ 中文详细注释的开源项目 RP ...
- Swagger 生成 PHP restful API 接口文档
需求和背景 需求: 为客户端同事写接口文档的各位后端同学,已经在各种场合回忆了使用自动化文档工具前手写文档的血泪史. 我的故事却又不同,因为首先来说,我在公司是 Android 组负责人,属于上述血泪 ...
- Laravel使用swagger PHP生成api接口文档
Laravel使用swagger PHP生成api接口文档 Swagger集接口文档和测试于一体,就类比将postman和showdoc的结合体 首先要先安装基于laravel5的swagger包 地 ...
- swagger php 生成api,blog/Swagger生成php restful API接口文档.md at master · lfq618/blog · GitHub...
Swagger生成php restful API接口文档 背景 我们的restful api项目采用yaf框架, 整体结构简单, 我们只需要用swagger扫描 application目录即可. 下面 ...
- API接口文档利器:Swagger
文章目录 API接口文档利器:Swagger Swagger介绍 Swagger常用注解 Swagger测试 Swagger生成API文档的工作原理: API接口文档利器:Swagger Swagge ...
- 如何自动生成 API 接口文档 - 一份详细指南
本篇文章详细教你如何使用 Apifox 的 IDEA 插件实现自动生成接口代码.好处简单总结有以下几点: 自动生成接口文档: 不用手写,一键点击就可以自动生成文档,当有更新时,点击一下就可以自动同步接 ...
- 开发日记-20190328 关键词 利用eolinker一键快速生成API接口文档
今天感觉效率真的很低= =各个层面的,apk发布到现场发现出现了问题,所以一个下午都在忙着解决现场出现的问题,领导一直打电话询问进度,午觉也没有睡所以今天预计的很多计划都处于停滞状态,像昨天规划的今天 ...
最新文章
- deepspeech实时语音识别
- eclipse使用教程_使用此首选项可加快Eclipse m2e配置
- 【错误记录】Oboe / AAudio 播放器报错 ( onEventFromServer - AAUDIO_SERVICE_EVENT_DISCONNECTED - FIFO cleared )
- php 文件夹里有多少,计算目录php中有多少个文件
- 【项目管理】项目裁剪解读
- 开发人员学Linux(2):VirtualBox中安装CentOS7系统设置
- vi和vim命令行编辑器命令
- 设计模式 - Command
- 背景图层和普通图层的区别_图层样式(一)—高级混合选项
- P1287 盒子与球(python3实现)
- 华为否认窃密;贾跃亭陪许家印考察FF;谷歌或被罚95亿欧元 | 极客头条
- 宾夕法尼亚在线计算机硕士,申请访谈:宾夕法尼亚大学(Upenn)计算机科学(CS)的录取攻略...
- 惠普传真服务器位置,HP打印机ip地址设置及添加
- 上传文件到云服务器一般用什么软件?
- HDU 1873 优先队列 Java版
- Android av sync机制
- 俯仰角与横滚角的介绍
- SSH远程访问开发板
- 机器人 零境交错吧_电击文库零境交错角色大全 最强角色选择推荐及属性数据汇总[多图]...
- MATLAB 双坐标轴设置