dilneiss/laravel-request-docs

从请求规则、控制器和路由自动生成 Laravel 文档

1.18 2022-03-23 05:23 UTC

This package is auto-updated.

Last update: 2024-09-24 08:57:14 UTC


README

Laravel Request Docs

为 Laravel 提供无烦恼的自动 API 文档生成。
Swagger 的替代方案。

快速:在任意 Laravel 项目上安装

无烦恼:自动生成请求规则和参数的 API 文档

分析:内置 SQL 查询时间分析器,响应时间和头部输出。

功能

  • 自动从 Laravel 路由中获取路由
  • 自动从注入的请求中获取规则
  • 支持授权头部
  • 支持 Laravel 中请求的 SQL 查询、响应时间和内存消耗
  • 使用 faker.js 智能自动请求构建器
  • 使用 markdown 显示额外文档

在 Medium 上阅读

无需编写注解即可自动生成 Laravel 的 API 文档。

了解更多: https://medium.com/web-developer/laravel-automatically-generate-api-documentation-without-annotations-a-swagger-alternative-e0699409a59e

要求

安装

您可以通过 composer 安装此包

composer require rakutentech/laravel-request-docs --dev

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag=request-docs-config

用法

/request-docs/ 上通过浏览器查看

或生成静态 HTML

php artisan lrd:generate

生成的文档 HTML 存放在 docs/ 内。

设计模式

为了使此插件正常工作,您需要在控制器中注入请求类,并遵循设计模式。对于额外文档,您也可以在控制器方法中使用 markdown。

Design pattern

截图

生成的 API 文档

Preview

尝试 API

Preview

SQL 查询分析

Preview

响应分析

Preview

自定义头部

Preview

额外

您可以在 markdown 中编写额外文档,它将在仪表板上以 HTML 格式渲染。以下是在控制器中使用它的示例

    /**
     * @lrd:start
     * #Hello markdown
     * ## Documentation for /my route
     * @lrd:end
     */
    public function index(MyIndexRequest $request): Resource
    {

测试

./vendor/bin/phpunit

代码风格检查

./vendor/bin/phpcs --standard=phpcs.xml --extensions=php --ignore=tests/migrations config/ src/

修复代码风格问题

./vendor/bin/php-cs-fixer fix src/
./vendor/bin/php-cs-fixer fix config/

更新日志

  • 首次发布
  • v1.9 增加了状态码、响应头部、自定义请求头部等改进,并修复了用户报告的问题
  • v1.10 显示 PHP 内存使用情况,修复了 gzip 编码问题
  • v1.12 修复了 id 问题,并支持 Laravel 9
  • v1.13 支持 Laravel 9
  • v1.15 添加了过滤功能,并在异常时回退到正则表达式