wxm/ddoc
Composer 安装命令:
composer require wxm/ddoc
包简介
基于 laravel 框架, 读取数据库信息生成数据库字典, 通过控制器注释生成API接口文档, 注册 ddoc 路由网页形式呈现
README 文档
README
支持 Laravel/Lumen 下控制器注释生成API文档,生成数据库字典, 注册路由呈现
安装
composer require wxm/ddoc --dev
配置
Laravel
-
注册 ServiceProvider (laravel 5.5 不需要注册):
Wxm\DDoc\DDocServiceProvider::class
-
发布配置:
php artisan vendor:publish --provider="Wxm\DDoc\DDocServiceProvider" --force
Lumen
-
注册 ServiceProvider:
bootstrap/app.php下添加// 本地环境注册 if ($app->environment('local')) { $app->register(Wxm\DDoc\DDocServiceProvider::class); }
-
手动复制配置文件
使用
-
开启服务器:
php artisan serve
-
访问
http://localhost:8000/ddoc
接口注释 生成文档
/** * @Resource("登录令牌", uri="/token") */ class AuthController extends Controller { /** * 获取令牌 * * > 通过手机号和密码获取会话`token`即登录凭证. * > 需要认证的请求请携带此 Authorization 头 * > * > Authorization:Bearer {token} * > * * @Post("/") * @Versions({"v1"}) * @Response(200, body={"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkueHkudGVzdFwvc2Vzc2lvbiIsImlhdCI6MTU0NTIxNjM5OSwiZXhwIjoxNTQ1MjE5OTk5LCJuYmYiOjE1NDUyMTYzOTksImp0aSI6Im9pZjV4WTNqS2JkbEhzVmQiLCJzdWIiOjEsInBydiI6Ijg3ZTBhZjFlZjlmZDE1ODEyZmRlYzk3MTUzYTE0ZTBiMDQ3NTQ2YWEifQ.p3oAVkAxSCxTug5s6168N-ccfuCCywGDFiJ0b9zCXq8","token_type":"bearer","expires_in":3600}) * @Parameters({ * @Parameter("phone", type="integer", required=true, description="手机号."), * @Parameter("password", type="string", required=true, description="密码."), * }) */ public function login() { } /** * 销毁当前令牌 * * * 权限要求:`登录用户` * * > 销毁成功返回 `204` 无内容 Http code * * @Delete("/") * @Versions({"v1"}) * @Response(204) */ public function logout() { } /** * 刷新获取新令牌 * * * 权限要求:`登录用户` * * > 销毁当前令牌,获取新令牌 * * @Put("/") * @Versions({"v1"}) * @Response(200, body={"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkueHkudGVzdFwvdG9rZW4iLCJpYXQiOjE1NDUyOTY3MzcsImV4cCI6MTU0NTMwMDM2NywibmJmIjoxNTQ1Mjk2NzY3LCJqdGkiOiI5Rk43TGJxZUlBc1JmZVRwIiwic3ViIjoxLCJwcnYiOiI4N2UwYWYxZWY5ZmQxNTgxMmZkZWM5NzE1M2ExNGUwYjA0NzU0NmFhIn0.qBCL-EfGYRnlxPZerpHpD9HVumjf89fVa2CBoXoFSvI","token_type":"bearer","expires_in":3600}) */ public function refresh() { } }
配置 nginx 身份验证
设置账号密码
printf "账号:$(openssl passwd -crypt 密码)\n" >> .htpasswd
配置 nginx
location ~ /ddoc/ { auth_basic "Authorized users only"; auth_basic_user_file .htpasswd; try_files $uri /index.php?$query_string; }
参考 API Blueprint Documentation.
参考图
License
The MIT License (MIT). Please see License File for more information.
wxm/ddoc 适用场景与选型建议
wxm/ddoc 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.02k 次下载、GitHub Stars 达 27, 最近一次更新时间为 2017 年 09 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「database」 「api」 「doc」 「laravel」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 wxm/ddoc 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 wxm/ddoc 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 wxm/ddoc 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Dibi is Database Abstraction Library for PHP
Store your language lines in the database, yaml or other sources
A package for automatically encrypting and decrypting Eloquent attributes in Laravel 5.5+, based on configuration settings.
A PSR-7 compatible library for making CRUD API endpoints
A tool for display docs or api docs to others
PHP module for MySql database
统计信息
- 总下载量: 1.02k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 30
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-09-06