首先,我们来模拟一个业务场景。假如我们有这么一个基础资料表:
为了查找这个基础资料的信息,我们让每个字段都参与查询:
其中的类别是个基础资料:
现在需要在本地开发一个API,给外部系统调用。
- 传输方式:POST
- 请求和响应的数据格式都是:JSON
为了实现零码开发,我们需要借助一个软件工具:配得快。
- 配得快是帮助软件开发人员实现低码开发的一套业务快速配置系统;
- 配得快下载地址:配得快下载
第一步:在数据库中创建好查询用的存储过程。(使用的是Microsoft SQL Server数据库)
CREATE PROCEDURE [dbo].[SPDEMO_网络_有参查询]
@fcode nvarchar(50),
@fname nvarchar(50),
@ftype nvarchar(10),
@fdatefrom datetime,
@fdateto datetime,
@fqtyfrom int,
@fqtyto int,
@famountfrom float,
@famountto float
AS
BEGIN
SELECT
[FID]
,[编码]
,[名称]
,[类别]
,[申请日期]
,[数量]
,[金额]
FROM DEMO_图片数据
WHERE
编码 LIKE '%'+ISNULL(@fcode,'')+'%' AND
名称 LIKE '%'+ISNULL(@fname,'')+'%' AND
类别 LIKE '%'+ISNULL(@ftype,'')+'%' AND
CONVERT(NVARCHAR(10),申请日期,120) >= CONVERT(NVARCHAR(10),ISNULL(@fdatefrom,'1900-01-01 00:00:00'),120) AND
CONVERT(NVARCHAR(10),申请日期,120) <= CONVERT(NVARCHAR(10),ISNULL(@fdateto,'2999-12-31 23:59:59'),120) AND
数量>=ISNULL(@fqtyfrom,-999999) AND
数量<=ISNULL(@fqtyto,999999) AND
金额>=ISNULL(@famountfrom,-999999999.99) AND
金额<=ISNULL(@famountto,999999999.99) AND
CONVERT(NVARCHAR(4),申请日期,120) = '2019'
ORDER BY 编码
END
第二步:在配得快软件中创建一个对象:
创建对象的过程很简单,为其选择数据来源于数据库存储过程,设置好WEB访问识别码。
WEB访问识别码,很关键,是外部系统访问本地API的寻址参数。
第三步:为此对象配置查询参数:
第四步:当执行存储过程返回数据结果集时,将在业务界面的数据表格中显示出来;如果需要对数据表格中的数据进行样式设置,则必须在配得快中进行返回列配置;否则可以省略这一步。
第五步:将配置好的对象发布到业务系统界面,供开发人员测试查看效果。如果不需要测试,可以省略这个步骤。
到这里,本地自建API就结束了。
现在,开始测试配置的效果。先进入业务主界面:
找到刚发布的对象,双击该对象弹出过滤界面,选择类别为“外发”,其余不设置(简单示例),然后单击确定按钮开始查询,可以查到数条记录。
能够查询到记录,说明自建的API,内部流程通畅无阻,那么,外部系统调用就不会出现问题。
一切结束之后,需要提供一个URL给外部系统访问。假如域名为:peidekuai.com
那么外部系统访问的URL为:http://www.peidekuai.com/read.ashx?id=125
这里的“125”就是上文中提到的“WEB访问识别码”,read.ashx是用来读取数据的一般处理程序。
现在在离你1000公里有个外部系统,开始来访问刚自建的这个API。
访问地址:http://www.p