无服务器架构(通过低代码开发平台自定义脚本和API扩展实现复杂规则)

注:本文对远行发布的低代码平台核心功能进行了详细说明和介绍。建议阅读前先阅读本头条号上已经发布的关于低代码平台规划和架构设计思想的一些文章。低代码开发平台概述对于低代码开发平台,我在前面发布过多篇文章对整体的规划,架构设计,建模思路进行了详细的描述,也说明了为何需要构建一个面向企业级应用的低代码开发平台。当前有很多提供低代码开发平台的服务商,各家的方案或整体架构虽然有差异,但是本质的内容基本还是一致,即一切皆是可配置,可建模的。可以设想下开发一个简单功能的过程,基本也就是数据库表设计,前端界面设计,编写逻辑层代码和接口实现业务规则,挂接流程引擎实现流程,配置功能和数据权限等。对于低代码平台,核心就是建模,因此我们的低代码平台本身也是围绕对象建模,表单建模,流程建模,权限建模,规则建模等展开的。对于低代码平台的基本功能,可以参考前面一篇文章。重磅发布-通过低代码开发平台实现一个基础业务功能今天重点介绍通过低代码平台来实现两类业务的规则。一类是前端的完整性校验规则的实现,一类是后端复杂业务逻辑的实现。注意当前我们的低代码开发平台没有采用规则引擎通过规则建模来实现复杂业务规则,而是通过开发人员自定义API接口服务来实现业务规则。当然低代码平台后期还会提供基于API接口服务的可视化组合编排能力。表单提交完整性校验在可视化表单设计中,对于各个界面控件本身支持类似字段类型,长度等基本的参考完整性校验。但是如果出现比较复杂的综合多个控件内容进行处理的参考完整性校验,就可以采用自定义前端JS脚本的方式来灵活实现。表单提交校验可设置提交表单数据时,对一系列指定条件按照指定的规则进行有效验证,只有满足校验规则时,表单才允许被保存提交。还是以请假申请单的表单设计和提交来举例说明。具体操作过程如下:首先是在可视化表单设计界面的表单属性Tab中点击添加校验条件按钮。然后进入到校验属性配置界面详细填写校验条件,包括具体的校验公式,当校验不满足的时候的提示文字等。前端自定义脚本校验这个功能实际和做前端开发的人员自己写JS脚本来完成参考完整性校验是一个方式。案例:在输入《请假申请单》信息时,限制请假天数必须少于7天,不满足该条件,提交表单失败;进入《请假申请单》的表单编辑页面,切换到“表单属性”页签,点击【表单脚本】,如下图:进入表单脚本编辑页面,先点击【插入默认脚本】,选择插入脚本函数为【表单提交校验】,然后类似写JS脚本的方式自定义输入各种校验代码,完成后确定保存。调用后端Rest API接口实现业务逻辑校验最后一种情况,就是比较复杂的后端业务逻辑,我们可以是开发人员自己去开发实现一个Http Rest API接口服务。然后在前端通过JS脚本来实现对该接口的调用。也就是对于复杂逻辑不再去追求完全可配置。而是将这部分扩展性开放出来,让开发人员自己写API接口的方式去实现这种逻辑,而对于表单设计过程中,仅仅只需要些少量脚本去调用这些API接口即可。在可视化表单的脚本中,支持http请求$request方式来实现接口调用,类似:app.$request({
url:'/api/name',
method:'get'
}).then(res=>{
console.log(res)
})其实现方法仍然是先进入到表单脚本功能。进入表单脚本编辑页面,先点击【插入默认脚本】,选择插入脚本函数为【表单提交校验】,然后输入相关校验代码,点击【确定】,如下图。通过这种方式可以灵活地实现各种复杂的业务规则。同时也更好的实现了通过API接口服务来实现前端开发和后端数据库之间的解耦。这个思路实际和当前云原生里面主流的ServerLess无服务器架构思路是一致的。即复杂规则先实现为BaaS层服务接口,而对于前端仅仅是通过JS脚本来调用后端接口服务能力。注意,我在前面介绍过另外一个小产品即API快速开发平台,可以基于数据库对象快速的发布API接口,这个平台可以和低代码开放平台实现完美的融合,即首先是通过API接口快速开发,开发出API接口,并注册到API网关,同时在表单设计中灵活的调用这些接口。

本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://kuaisubeian.cc/33856.html

kuaisubeian