x-class / l5-swagger-bootstrap-ui
Swagger UI 到 Laravel 5
Requires
- php: >=7.1.3
- darkaonline/l5-swagger: 5.5.*|5.6.*|5.7.*
- laravel/framework: 5.5.*|5.6.*|5.7.*
Suggests
- zircote/swagger-php:~3.0: !!! Require Swagger-PHP ~3.0 for @OA annotations support !!!
This package is auto-updated.
Last update: 2021-01-19 17:55:49 UTC
README
[![最新版本在 Packagist][ico-version]][link-packagist] [![总下载量][ico-downloads]][link-downloads] ![软件许可][ico-license]
简介
l5-swagger-bootstrap-ui
是 Swagger
的前端 UI 实现,旨在替换 Swagger
默认的 UI 实现 Swagger-UI
,使文档更易于使用...
l5-swagger-bootstrap-ui
只是 Swagger
的 UI 实现,并不是替换 Swagger
功能,因此后端模块仍然是依赖于 Swagger
的,需要配合 Swagger
的注解才能达到效果
声明
l5-swagger-bootstrap-ui
的前端界面使用 bootstrap 实现
Javascript 逻辑参考项目 https://github.com/xiaoymin/Swagger-Bootstrap-UI 已获得作者授权。
项目依赖于 https://github.com/DarkaOnLine/L5-Swagger,安装 l5-swagger-bootstrap-ui
时,L5-Swagger
将被自动安装。有关 L5-Swagger
的配置及 api-docs.json
文件的生成,请参考 L5-Swagger
[https://github.com/DarkaOnLine/L5-Swagger/blob/master/README.md]
安装方法
- 首先,需要使用 composer 引入
x-class/l5-swagger-bootstrap-ui
包,如下:
composer require x-class/l5-swagger-bootstrap-ui
-
Laravel >= 5.5 版本会自动引入 Provider
-
需要先运行
L5-Swagger
的 publish 命令生成配置文件
php artisan vendor:publish --provider "L5Swagger\L5SwaggerServiceProvider"
- 然后运行
l5-swagger-bootstrap-ui
的 publish 命令生成视图文件
php artisan vendor:publish --provider "L5SwaggerBootStrapUi\L5SwaggerBootStrapUiServiceProvider"
- 最后,在相关控制器文件中编写 Swagger 注释后,运行
api-docs.json
文件生成命令
php artisan l5-swagger:generate
- 在浏览器中打开网址
http://youdomain/api/documentation
即可访问。如果要修改网址或其他配置信息,请参考L5-Swagger
[https://github.com/DarkaOnLine/L5-Swagger/blob/master/README.md]
注意:
生成 api-docs.json
文件时可能会遇到错误,主要是由于 L5-Swagger
依赖的 Swagger
版本导致的。如果你的 swagger-php >= 3.0
请修改 .env
文件增加 SWAGGER_VERSION=3.0
或者将 config/l5-swagger.php
中的 2.0
修改为 3.0
'swagger_version' => env('SWAGGER_VERSION', '3.0'),
如果你的 swagger-php < 3.0
或者使用的是旧版本的语法 @SWG (SWAGGER annotations) !!! 请运行安装旧版本的 swagger-php
composer require 'zircote/swagger-php:2.*'
功能
- 接口文档说明,效果图如下:
- 在线调试功能,效果图如下
Swagger 简介
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法、参数和模型紧密集成到服务器端的代码,允许 API 保持同步。Swagger 让部署管理和使用功能强大的 API 从未如此简单。
Swagger-UI 默认效果图如下: