feat: 动态API支持直接执行已有的应用逻辑

This commit is contained in:
wintel
2025-03-30 18:01:22 +08:00
parent d42be4d7c9
commit dfbb150f9b
4 changed files with 106 additions and 25 deletions

View File

@@ -11,7 +11,7 @@ namespace OpenAuth.WebApi.Controllers
{
/// <summary>
/// 动态API控制器
/// 用于处理任意表的CRUD操作
/// 用于处理任意表的CRUD操作及直接调用OpenAuth.App的各种应用
/// </summary>
[Route("api/dynamic/[action]")]
[ApiController]
@@ -25,6 +25,8 @@ namespace OpenAuth.WebApi.Controllers
_app = app;
}
/// <summary>
/// 获取表数据列表
/// </summary>
@@ -145,5 +147,30 @@ namespace OpenAuth.WebApi.Controllers
return result;
}
/// <summary>
/// 直接调用OpenAuth.App的各种应用
/// </summary>
/// <param name="req">调用参数</param>
/// <returns></returns>
[HttpPost]
[AllowAnonymous]
public TableData Invoke([FromBody] InvokeDynamicReq req)
{
var result = new TableData();
try
{
result = _app.Invoke(req);
}
catch (Exception ex)
{
result.code = 500;
result.msg = ex.InnerException?.Message ?? ex.Message;
}
return result;
}
}
}