网站开发技术部绩效考核,网站域名注册备案教程,软件开发工具case,滨州改版网站建设服务概述动态接口允许用户在运行时创建和修改API端点#xff0c;而无需重新部署应用程序。这对于需要频繁更改API结构的应用程序特别有用。通过动态接口#xff0c;开发人员可以根据业务需求快速调整API#xff0c;提升开发效率和响应速度。功能特点动态创建和修改API端点#…概述动态接口允许用户在运行时创建和修改API端点而无需重新部署应用程序。这对于需要频繁更改API结构的应用程序特别有用。通过动态接口开发人员可以根据业务需求快速调整API提升开发效率和响应速度。功能特点动态创建和修改API端点用户可以在运行时添加、更新或删除API端点。支持JSON数据格式动态接口支持JSON数据交换格式。配置说明新增一个动态脚本在管理后台导航到“接口管理”-“脚本管理”模块。点击左侧文件树上方的菜单“”按钮新增一个动态脚本文件。修改脚本名称和内容。点击运行按钮测试脚本是否正常。保存脚本。例如using System;using System.Threading.Tasks;using Newtonsoft.Json;using System;using JESAI.Core.Aspects;using JESAI.Platform.Domain.Admin.Repositories;using Jesai.DynamicDataSource.Sqlsugar.DynamicDatasources;public class Program{public string Handle(string param){//查询数据库var provider ServiceLocator.Instance.GetServiceIDbProvider();var dbprovider.GetConnection(Test).Result;var datadb.Ado.SqlQuerydynamic(select * from mlt_sys_dynamic_datasource);// 创建包含多个匿名对象的数组var tableData new[]{new { Id 1, TableName 用户表, TableCode user, TableDesc 用户信息表, IsValid 1, CreateTime 2023-10-01 12:00:00 },new { Id 2, TableName 订单表, TableCode order, TableDesc 订单信息表, IsValid 1, CreateTime 2023-10-02 12:00:00 },new { Id 3, TableName 产品表, TableCode product, TableDesc 产品信息表, IsValid 0, CreateTime 2023-10-03 12:00:00 }};var resultnew {ErrorCode000000,Message操作成功!,CurrentPage1,Total3,Datanew {tableDatatableData,DBDatadata}};var strJsonConvert.SerializeObject(result);return str;}public static async Task Main(){var p new Program();var resultp.Handle(null);Console.WriteLine(result);}}注意接口的入口方法必须是public string Handle(string param)其中param是JSON格式的字符串返回值也是JSON格式的字符串。可以自己修改为动态的方法名。如图所示新增一个动态脚本。微信图片_2025-11-24_101504_700运行测试如图所示输出结果正常。微信图片_2025-11-24_103039_7272. 通过动态脚本创建API端点- 在管理后台导航到“接口管理”-“接口定义”模块。- 点击“新增”按钮新增一个接口定义。- 填写接口名称、路径、方法、脚本名称等信息。- 点击“保存”按钮保存接口定义。如图所示打开接口定义模块。微信图片_2025-11-24_104529_387如图所示新增一个接口定义。微信图片_2025-11-24_105204_858测试调用打开swagger查看一下调用接口。微信图片_2025-11-24_105513_546使用JWT认证调用接口Postman测试调用接口传入参数查看返回结果。微信图片_2025-11-24_111346_110使用API密钥授权或签名认证授权调用接口先从系统查询AppID和AppSecret。直接从数据库查询管理模块暂时还没做微信图片_2025-11-28_134918_788计算签名Token计算方法如下取当前系统时间戳使用AppSecret对齐进行加密得到Token。例如当前时间戳为1699424000000AppSecret为TWM8uRwhTNzOCU7PDXAN47fewMMnF9GP使用Aes加密得到Token为74ZCFZHXe3z0in4RomdqAlong currentTimeStamp DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();var token AesEncryptor.Instance.Encrypt(currentTimeStamp.ToString(), TWM8uRwhTNzOCU7PDXAN47fewMMnF9GP);Console.WriteLine(token);调用接口时在请求头或者参数中添加AppKey和Token。微信图片_2025-11-28_141235_180微信图片_2025-11-28_141258_105注意- 前端调用一般使用JWT通过${baseUrl}/api/v1/UniformPlatform/Get/TestDynamicApi?param1 调用。需要在请求头中添加Authorization值为BearerjwtToken。/span−spanstylecolor:red;font−weight:bold;API密钥授权或签名认证授权调用通过{baseUrl}/api/v1/UniformApp/Get/TestDynamicApi?param1 调用。需要在请求头中添加AppKeyToken。