justblink / generic-api
创建一个API,只需添加ORM对象
Requires
- tina4stack/tina4php: ^2.0
This package is auto-updated.
Last update: 2024-09-20 16:49:44 UTC
README
此Tina4模块旨在提供一种简单的API,具有有限的编码,并利用Tina4 ORM。ORM类名用作API端点名称。API自带内置的安全性和环境配置。
安装
composer require justblink/generic-api
这也将安装Tina4作为依赖项。
初始化Tina 4
composer exec tina4 initialize:run
设置
请将以下内容添加到 .env 文件中,并按需设置
添加到域名和 generic-api 路由之间的 URL 中
GENERIC_API_BASE_URL=
安全性
所有端点都使用 Tina4 的 @secure
路由保护。但是,请确保您已经添加了令您满意的安全措施。
简单端点
所有ORM对象都应该有一个主键 id
。
所有端点都可以通过在 .env 文件中设置标志 GENERIC_API_BASE_URL 来扩展前缀
获取所有行 - GET /[class name]
获取一行 - GET /[class name]/{id}
插入一行 - POST /[class name]
更新一行 - POST /[class name]/{id}
删除一行 - DELETE /[class name/{id}
类名
类名应小写提供。复杂的类名应该由破折号分隔。
例如: /my-class-name
将在 ORM 中解析为 MyClassName
。
验证
将 GenericApiValidation 属性添加到 ORM 中将调用内置的验证。例如,这将检查 firstName 是否为字符串。
#[GenericApiValidation('string')]
public firstName;
通过扩展 ValidationHelper,可以编写自定义验证或在正常验证前后操纵值,通过使用 beforeValidate() 和 afterValidate() 函数。每个都具有返回验证是否正确、值(包括操纵)以及所需的错误消息的能力。