docs: 增加动态API

This commit is contained in:
yubaolee 2025-03-31 10:43:31 +08:00
parent bdd32d9d76
commit e5df6a5769
2 changed files with 91 additions and 2 deletions

View File

@ -1,7 +1,7 @@
/* /*
* @Author: yubaolee <yubaolee@163.com> | ahfu~ <954478625@qq.com> * @Author: yubaolee <yubaolee@163.com> | ahfu~ <954478625@qq.com>
* @Date: 2023-08-12 10:48:24 * @Date: 2023-08-12 10:48:24
* @LastEditTime: 2024-11-29 09:36:05 * @LastEditTime: 2025-03-31 10:24:25
* @Description: * @Description:
* @ * @
* @Copyright (c) 2023 by yubaolee | ahfu~ , All Rights Reserved. * @Copyright (c) 2023 by yubaolee | ahfu~ , All Rights Reserved.
@ -91,7 +91,7 @@ module.exports = {
path: 'start', // 可选的, 标题的跳转链接,应为绝对路径且必须存在 path: 'start', // 可选的, 标题的跳转链接,应为绝对路径且必须存在
sidebarDepth: 1, // 可选的, 默认值是 1 sidebarDepth: 1, // 可选的, 默认值是 1
collapsable: false, collapsable: false,
children: ['start', 'specialist', 'deploy', 'deployapi', 'devnew', 'multidbs', 'multitenant', 'unitwork','sqlsugar', 'entity', 'datavalidation', 'log', 'identity', 'job', 'cache', 'unittest','changesdk'], children: ['start', 'specialist', 'deploy', 'deployapi', 'devnew', 'multidbs', 'multitenant', 'unitwork','sqlsugar', 'entity','dynamicapi', 'datavalidation', 'log', 'identity', 'job', 'cache', 'unittest','changesdk'],
}, },
{ {
title: '权限控制', // 必要的 title: '权限控制', // 必要的

89
docs/core/dynamicapi.md Normal file
View File

@ -0,0 +1,89 @@
# 动态API
加快系统开发速度框架提供动态API功能可以实现无代码调整操作数据库。
## 数据库操作
在开发过程中对于有些简单表的处理如果每次都编写对应的增删改查会增加工作量且代码臃肿。这时我们可以使用动态API来处理。只需要前端按规范调用即可后端无需做任何工作。OpenAuth.Net的动态API支持以下功能
- 新增记录 `/api/dynamicapi/add`
- 修改记录 `/api/dynamicapi/update`
- 删除记录 `/api/dynamicapi/delete`
- 查询单条 `/api/dynamicapi/get`
- 查询列表 `/api/dynamicapi/getlist`
具体的参数可以查询对应的接口文档。我们以一个简单的表`noentity`为例来说明如何使用动态API。
```sql
CREATE TABLE `noentity` (
`id` varchar(50) NOT NULL,
`name` varchar(255) NULL,
`age` int(11) NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
```
无需在后端添加任何代码,只需前端按规范调用即可。
## 新增记录
前端请求方式为`POST`,请求地址为`/api/dynamicapi/add`,请求参数为:
```json
{
"tableName": "noentity",
"obj": "{\"name\":\"测试\"}"
}
```
## 修改记录
前端请求方式为`POST`,请求地址为`/api/dynamicapi/update`,请求参数为:
```json
{
"tableName": "noentity",
"obj": "{\"id\":\"1\",\"name\":\"测试新\"}"
}
```
注意修改的时候必须包含主键Id字段。
## 删除记录
前端请求方式为`POST`,请求地址为`/api/dynamicapi/delete`,请求参数为:
```json
{
"tableName": "noentity",
"ids": ["1"]
}
```
## 查询单条记录
前端请求方式为`POST`,请求地址为`/api/dynamicapi/get`,请求参数为:
```json
{
"tableName": "noentity",
"id": "1"
}
```
## 查询列表
前端请求方式为`POST`,请求地址为`/api/dynamicapi/getlist`,请求参数为:
```json
{
"tableName": "noentity",
"pageIndex": 1,
"pageSize": 10
}
```