catlabinteractive / charon
Charon 是一个用于构建自文档 RESTful API 的框架。
v1.5.12
2022-09-13 13:37 UTC
Requires
- php: >=7.1
- ext-mbstring: *
- catlabinteractive/requirements: ^1.0.7
Requires (Dev)
- catlabinteractive/cursor-pagination: ^1.0.8
- phpunit/phpunit: ^9.0
Suggests
- ezyang/htmlpurifier: ^4.14
- dev-master
- v1.5.12
- v1.5.11
- v1.5.10
- v1.5.9
- v1.5.8
- v1.5.7
- v1.5.6
- v1.5.4
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5.0
- v1.4.23
- v1.4.22
- v1.4.19
- v1.4.18
- v1.4.17
- v1.4.16
- v1.4.15
- v1.4.14
- v1.4.13
- v1.4.11
- v1.4.9
- v1.4.7
- v1.4.6
- v1.4.5
- v1.4.4
- v1.4.3
- v1.4.2
- v1.4.1
- v1.4.0
- 1.3.x-dev
- v1.3.47
- v1.3.46
- v1.3.45
- v1.3.44
- v1.3.43
- v1.3.42
- v1.3.41
- v1.3.40
- v1.3.39
- v1.3.38
- v1.3.37
- v1.3.36
- v1.3.34
- v1.3.33
- v1.3.31
- v1.3.30
- v1.3.29
- v1.3.28
- v1.3.27
- v1.3.26
- v1.3.25
- v1.3.24
- v1.3.23
- v1.3.22
- v1.3.21
- v1.3.20
- v1.3.19
- v1.3.16
- v1.3.15
- v1.3.14
- v1.3.13
- v1.3.12
- v1.3.11
- v1.3.10
- v1.2.9
- v1.1.15
- 1.0.x-dev
- v1.0.21
- v0.1.66
- dev-dependabot/npm_and_yarn/docusaurus/webpack-5.76.1
- dev-dependabot/npm_and_yarn/docusaurus/sideway/formula-3.0.1
- dev-dependabot/npm_and_yarn/docusaurus/http-cache-semantics-4.1.1
- dev-dependabot/npm_and_yarn/docusaurus/ua-parser-js-0.7.33
- dev-dependabot/npm_and_yarn/docusaurus/json5-2.2.3
- dev-dependabot/npm_and_yarn/docusaurus/loader-utils-2.0.4
- dev-dependabot/npm_and_yarn/docusaurus/minimatch-and-recursive-readdir-and-serve-handler-3.1.2
- dev-dependabot/npm_and_yarn/docusaurus/terser-5.14.2
- dev-filters-refactor
- dev-rework-documentation
- dev-development
- dev-jsonapi-compatible
- dev-1.0-undefined-values
- dev-develop
This package is auto-updated.
Last update: 2024-09-15 05:54:53 UTC
README
强化版的分形。
是什么?
Charon 是一个用于构建自文档 RESTful API 的 PHP 框架。
请访问 我们的网站 获取更多信息。
入门
虽然 Charon 可以与任何框架一起使用,但我已经创建了一个 laravel 骨架项目,以便您快速开始。
安装
composer create-project catlabinteractive/laravel-charon api
配置
请按照 https://github.com/CatLabInteractive/laravel-charon-template 上的说明进行操作
为什么?
在构建 RESTful API 时,有一些事情会反复出现
- 实体到资源的转换
- API 描述
- 资源字段过滤
- 关系及其展开
- 过滤
- 排序
- 分页
Charon 通过提供一个框架来处理这些功能中的大部分,从而试图减少一些工作。
- 而不是编写转换器,编写定义
- 根据这些定义进行过滤和排序
- 允许客户端选择应返回的字段
- 在一个请求中展开关系
- 在一个中间件中处理所有分页
文档
默认情况下,Charon 生成 Swagger 2.0 文档。可以通过实现接口来实现其他文档器。
框架
Charon 与 Laravel 工作得非常好,但该库的设计使其能够集成到其他框架中。
不需要 ORM,但它使实现某些功能(如分页和过滤)变得容易得多。
上下文选项
对于字段和展开参数:在字段前添加 * 以重复该字段(用于递归模型)。