00:04
Hello,大家好,欢迎来到本期的腾讯V大代码的直播介绍啊,我是今天的主讲官大黄,我也是V大的高级产品经理,那么今天呢,我将会给大家带来一个如何使用数据能力迅速迅速搭建微应用的一个这样的专题,那么重我们会围绕V大现在的数据的几大能力,以及每个能力的一些功能点,专门给大家做一个详细的介绍,以及到最后呢,我们会有一个相关的实战训练来,呃,带领大家如何使用相关的一些能力构建出一个应用,那我们今天就正式的开始。首先呢,今天我们分为大概三个议题,第一个是关于产品的介绍啊,它包含了数据源的四大能力啊,第二第二板块的话,我们的业务场景介绍,在什么情况下应该使用什么的能力啊,第三的话就是实战操作,那这边我今天会为大家带来一个如何使用这个图像识别的能力,去做到我们现在疫情的一些,呃。
01:14
比如说健康码或者行程卡的一些上传的表单操作啊。那我这边首先来先给大家开始,呃,简单的规划一下这个图,可能大家在之前的直播里面也也呃也也看到过,那么根据现金呃,在整个微大的能力里面,编辑器组建,数据源,工作流,用户权限等等已经构建了我们啊整个微大的一个应用开发的能力,那么今天我们会围绕着数据源的这样的一个能力啊,它包含了数据模型,选项级连接器和自定连接器,相信很多小伙伴们在很多之前的反馈里也会提出,呃,我该在什么情况下使用这四大能力呢?那在今天的直播里面也会给大家带来一个详细的一个介绍。
02:01
首先我们可以看到现在数据源包含了呃四大能力,这是大家在现在腾讯云的控制台里面,右侧数据源分类下面也可以看到的四大能力,第一是数据模型,第二是通用选项集,第三是连接器,四是定连接器,那么它们分别的用途是什么呢?我们也可以看到右侧这边给大家带来的一个详细的描述,那数据模型呢,本身是用来定义我们一般的应用或者业务中的一些数据建模啊,包含比如说一个表单,它也有多少个字段,或者是我们在一个页面中,它有呃多少种展现的这个呃数据等等,那么数据模型本身呢,它后台也可以连着,连接着我们一定的存,呃实体的一些持久化的存储,比如说MY或者是flex DB,那它其实本身也映射到了我们数据存储相关的一个能力。那么我们的开发者呢?可以通过呃引开发应用,并且引用相关的一个数据模型来显示或者操作这些业务数据,那基本简单说来,它就是一个业务建模。
03:08
那我们的数据模型包含了几个部分,首先是我们的模型字段以及它的类型啊,模型首呃,我们的数据模型包含两种,第一种是标准的数据模型,那就是由我们自己来创建的一些业务模型,那也包含一些我们系统已经创建好的数据模型,比如说用户和部门啊,那这些是我们预制在这个整个系统里面的,那用户可以直接使用这样的一个数据模型,那模型字段呢,用来描述出我们这一个业务对象里面有何种的这个数据需要存储,比如说用户的姓名啊,年龄,名称等等都属于这个模型字段,那模型的字段类型也比较多啊,这个到时候我们也可以在呃详细里面去介绍一下。那每个模型都会涉及到一个数据的读写,那么模型方法其实就是告诉我们如何去操作这些业务对象啊,进行一些数据读写的方法,比如说新增删除啊,或者批量新增批量删除等等。
04:09
然后现在V大也上新了两大新的能力,第一个是视图的配置和一个事件处理的能力啊,首先视图配置呢,我们在今天的这个实例操作里面也会重点的介绍一下,它其实就是一个我们能够快速的有点像是服务端API一样去具象出来一些业务逻辑,比如说在今天介绍的这个防疫,防疫信息健康码里面,我们会去重点的,呃,可能想要快速的操作一些,诶呃,异常的呃,健康码信息和一些正常的健康码信息,那在这个情况下都可以使用到我们视图的一个能力。那事件处理呢,就是针对我们数据模型的一些读写方法,比如说新增后啊,那个删除后,那这些事件,这些数据的这个事件呢,会可以让我们在一些工作流里面做一些绑定,那么在上一期这个工作流的介绍里面也介绍了相关的能力。
05:04
啊,通用选项级呢,就是我们可以,呃,其实简单说来,通用选项级就是一个枚举。那么我们有很多大量的复用的一些呃媒体字段,比如说省份城市,还有日常中用到的一些状态,比如说正常状态,异常状态等等,那这类大量重复呃的一一个一个选项呢,都可以通过我们的通用选项级的能力啊去来创建啊,也能够在我们各个模型中去进行到一个复用的一个这样的能力。然后剩下的接下来呢,就是两个打通外部啊服务的两大利器,第一个是连接器,其实连接器也叫做标准连接器,它其实本身就是我们打通外部应用数据,比如说啊腾呃,一些SARS应用,比如说腾讯会议,腾讯文档,还有微信支付,包括我们最近上新的一些腾讯云的能力,比如说腾讯的腾讯的推送,或者是这个呃,腾讯云图像识别,OCR的相关的能力,都是可以通过我们的标准连接器去来使用的,那么这里的接口其实不需要呃,我们的开发者去一个个的录入,而由V的官方团队呢,我们会提供这样的一个接口的能力,而我们的用户只需要填写一些相关的配置信息,比如说。
06:21
啊,腾讯会议或者文档的扫码授权啊,然后腾讯云相关接口的一些ID跟key等等它啊,当我们创建完成之后,就可以去快速的使用。那当然呢,我们的这个标准连接器并没有办法满足所有的第三方应用系统打通的需求,那这个时候我们就会通过自定义连接器来去实现一些,呃第三方服务,比如说呃企业自己的一些服务,或者说我其他应用的一些接口,或者是现在标准连接器没有提供的一些接口等等,都能够使用我们的自定义连接器来支持。啊,这个我们可以通过HTTP请求,自定义代码或者云开发云函数来去使用,那其中我们刚刚讲了调用第三方系统最快的方式可能就是HTP的请求。
07:10
然后那在这种方式下,我们只需要像比如说如果大家了解一个posman的话,那其实就像POS一样,我们可以配置一些可视化的操作啊,最终就能调通一个接口,那么V达最近在自定义连接器里面也迭代了一个健全的设置,我们能够通过o2.0的方式去能够调用一些需要健全的接口啊,类似于比如说微信等等一些第三方的这个啊,健全的接口都可以,那么我们的自定义代码和云开发云函数呢,它其实是能够实现一个自定义的业务逻辑的。也就是说,当我们没有一个完整的后台服务的话,我们也可以通过自定义代码或者是开发云函数呢,来提供一个完整的服务端的能力。那这些我们待会儿在后面的介绍也会啊,跟大家详细的介绍。
08:01
然后接下来我们来看一下数据源的一些使用场景,首先最最简单的就是啊,我们一个应用肯定是由一个一些数据去构成的啊,包括数据的一些流转,例如新增、删除、查询等等,那么它的一个数据的描述呢,就是我们数据模型的一个建立,比如说我们的用户的这个数据模型,它就描描述了V的用户啊,它包含的一些属性,比如说姓名,比如说账号名等等,那么部门也是也是如此。所以我们的呃数据模型是微大家使用率最广的一个呃数据源的能力。那我们可以看到这个数据源的方法也是在下面啊,它有新增或者新增多条等等,那么它的入参和出参呢,也决定了我们这些方法的一些API的描述啊,比如说在路上哪一些是必填的,哪一些是非必填的啊,然后他出餐的这个字段和数据映射成什么关系呢?我们都可以在这个场景下去使用。
09:01
然后连接第三方应用的话,我们就刚刚提到的说,连接器里面提供了很多呃,第三方的SaaS服务的连接,比如说腾讯文档,腾讯会议啊,还有腾讯地图啊,以及这个微信支付短信等等这一些呢,可以帮助我们的开发者快速的复用这些第三方业务提供的open API或者开放能力啊,比如说微信支付的话,我们就可以。通过填写一些这个商户号的一些基本信息,我们最终就能在应用中快速的去发起这个啊,支付的相关能力啊等等。那我们企业自有的一些系统该如何去使用呢?那就是刚刚提到的一个自定义连接器的一个能力。那我们在这个右边的这个图里面也可以看到,这是一个简单的HTP的请求,那在这个情况下呢,我们可以看到它啊,可以定义这个接口的输入啊,最终包括使用一个变量的形式去来实现我们的这个入参和这个动态的HTP。
10:03
配置的一个联动啊,这也是我们连接企业的自有系统,再结合我们O健全呢,也能保证我们在公有云上,或者是在外网啊,或者是一些其他需要安全健全的一些能力啊,去使用我们的这个相关能力。然后这边也是提供的自定义业务逻辑,就是通过编写代码啊,我们目前支持的这个自定义代码的能力是note JS,那这个也比较符合一些前端小伴的这个能力,就可以通过这个G的语来实现这个些的这个呃A能力。好,那接下来其实我会详细的跟大家再走一遍,我们整个呃,腾讯微达数据源的相关能力的一些细节,首先我们来看到我们的数据模型。在我们的数据模型这里啊,我们可以快速的去新建一个啊空白,创建一个空的一个数据模型,或者是我们可以通过Excel的导入啊,这个我们通过一些事例的模板,然后把我们的这个数据通过上传了之后呢,我们就能快速的去构建,然后很多小伙伴也提到过啊,关于我们收到的一些反馈啊,对于主列字段,或者叫主属性列的一个配置,它是什么意思呢?就是在V达的显示里面,我们很多情况下它是会具有一定的关联关系的。
11:24
那么如果我们将一个字段,或者大家可以理解在一个表格的列里面,如果我这个列展示的是一个关联关系的话,那通常在我们的比如说MY或者里面,大家可以看到它其实是一个呃,ID对吧,它不具备一定的可读性,那么V的主字的能力呢,就是可以是啊,把它显示成用户可理解的一个文本字符,比如说我们将用户字段的主列字段是它的姓名,那么当我们在所有关联关系的表格里面有一列是用户的这一列的话,我们就会以他的这个主页字段,也就是姓名来作为那一列的这个默认的展示。
12:02
所以这就是我们组列字段的一些相关的能力。好,那我们来看一下一个数据模型所包含的基本的能力,我们可以看到现在这个数据模型,它在呃,现在的模型配置这一页里面,是我们主要的一些功能,它就是来定义我们数据模型的一些字段,我们可以看到一个数据模型的字段,也就是它的属性有支持多种类型,比如说文本,波尔数字这种比较基础的,然后还有一些邮箱、电话、网址等等,那这些其实呃,邮箱、电话网这些其实本身在存储的时候,它也是文本类型的,但是我们为什么会把它单独列出来的,是因为我们在前端去做一些表单的时候呢,我们会根据这些电话或者邮箱或者网址的类型呢,去显示出一些独有的一些呃表单的控件。比如说副文本的话,我们就会显示多行啊,时间日期这些也会显示出啊,比如说时间日期的这个选择器,对吧,文件或者是图片的话也会去,呃,形成一个上传的一个这样的组件,它其实和我们的模型是做好了一些呼应的。
13:12
那么这边还有一些比较特殊的这个类型,比如说自动编号,其实很多小伙伴也会提到说自动编号,它会呃呃是有一些什么样,特别就是我们V的数据模型的自动编号的类型呢?它其实可以提供说一种啊,它其实代表的一个默认值,因为我们的表单里面,你可以是因为在一些业务场景下,你可以是呃需要手动输入自动编号,那在没有输入自动编号的情况下呢,那你可能是需要我们自动去帮他。啊生成,所以在自动编号里面呢,我们也可以支持一些自定义的逻辑啊,包括比如说按照日期的前缀,或者是一些自定义,那这个自定义我们可以支持,比如说时间日期,然后或者是随机字符串,然后或者是加入一些啊独有的一些前缀的能力,我们在下面的这个预览里面都是可以看到的。
14:01
这也方便呢,我们去生成一些啊,比如说订单号,或者是一些其他需要编码的一种啊数据的类型,那么在这个,呃,计算公式呢,其实就是我们所谓的一种动态的计算类型,比如说我们在一行里面有一个啊姓氏和这个名称,那么我们可能需要显示完整姓名的时候,不需要用户再重复的输入的话,我们就可以通过我们的计算公式。去做一个拼接,比如说我们在这里把这个所有人和这个颜色,我们举个例子,那他就可以通过这样的一个简单的表达式去做一个拼接。那在这种情况下的话,我们就可以去,呃,形成一个动态的数据,最终这个计算公式类型的话,它就不会存在我们真实的DB里面,而去作为一个啊,就是动态数据在我的数据里面去展现。这边我们啊,如果说大家需要详细的了解的话,我们会有一个相应的这个文档啊,可以看到这个关于我们所有数据类型的一些描述和功能啊,这块的话,到时候大家可以在直播之后可以去关注一下。
15:11
那我们在这边看到的这个模型方法呢,其实就是我刚刚简单介绍的我们不同的方法,它传入的一些入餐和出餐对应的能力,那这个也方便我们在后续啊,在用一些例如低代码这个编辑啊,或者说自定义代码编辑的时候呢,有了一个这个接口的参考依据,嗯。然后再看到我们现在的这个新上的几个能力,第一个是视图配置,比如说我们的这个,呃,防疫信息采集里面。比如说在我们现在这个防疫信息采集里面呢,我们可以呃,想要快速的去过滤出,诶,我想看到有一些这个异常的结果,或者是有一些检测合格的这个结果的话,我们可以通过我们的视图。去来做一个呃,自定义的表列设置,以及我们的这个呃筛选的排序,比如说。
16:09
稍等一下。好,我刚看到有些小伙伴会反馈,我们这个看的不清楚啊,我看一下能不能把它,呃这个放大一下。呃,不知道这边有没有那个能能看得清楚一点。所以啊,我们再回到回到这边的这个介绍来。呃,我们现在可以看到在我们的这个呃视图筛选里面呢,我们可以去快速的设置一些条件,比如说我们可以把呃,我们在什么情况下是属于异常呢?就是啊健康码的颜色它不等于绿色,然后核酸的这个检测间隔时长呢,不等于24小时。等等,哎,这个应该我是。全屏了的哈,呃,对,然后我看看全屏。
17:05
OK。然后呢,我们在这个呃,设置了筛选条件之后保存,那我们这边展示出来的数据就全部都是啊刚刚讲的异常的结果,那我们呃,大家会问我的表格,其实在应用中的那个待会儿说到的这个表格,它也可以作为一些数据筛选,那我为什么什么情况下需要使用视图呢?那其实我们的视图的使用情况就是在呃,我们很多应用里面可能会复用这样的一个视图,比如说在多个APP里面,那我可能都会有一些这个要显示异常的数据,或者是显示一些呃检测合格的数据,那这些数据呢,最终它可能在多个应用领域都使用,那如果说我们的这些条件或者数据发生变化了的话。那他可能你可能就需要说啊,我得到每一个应用里面去做一些变更,但是呢,现在的视图有了视图的这样一个能力的话,那就意味着我们在所有的应用都不需要去做额外的发布和修改,只需要通过我们的这个在数据模型的视图里面去进行编辑并且发布,那么所有的应用中的这个表格都会及时生效啊,所以这是一个比较快的一个呃能力,大家也可以理解成它就有点像是我们定义一个业务的接口。
18:26
那就好比说我们定义的一个服务端的一个查询条件啊,或者是my circle的那种视图啊,View的那种感觉,其实就是我们现在视图的一个主要的能力。好,那待会儿我们在这个疫情的里面,我们也会用到相应的这个能力啊,到时候可以跟大家一起再解释。然后我们再回过头来看到这个事件的处理,其实事件处理它就是针对我们的一个数据模型的一些相关的事件,比如说新建后,更新后,或者是批量新增,那么这些方法呢,会跟我们的这个啊流程去做一些配合,比如说当我新建了啊,用户提交了一个表单,就代表着新建,那这个时候我需要触发一个比如说校园访客审批的这个流程,那这个时候呢,我们就可以去啊,利用事件处理的这个能力去做一些相应流程的一些触发。
19:19
好,这就是我们大概的一个数据模型的一些。啊介绍,待会儿我们也会有一些详细的设置讲讲解哈。然后数据模型还会有一些比如说数据管理的能力,那在数据管理的这个能力里面呢,我们可以去呃,通过这个管理的后台去来看到我们的一些所有的数据啊,比如说我们看可以看到每一个呃,比如说防疫信息采集它的正式数据,或者体验环境的数据等等,我们都能看到一个类似的这样的一个能力。然后现在的话,我们也可以看到通用选项集,刚刚讲的里面有一个枚举的字段,那么其实通用选项级呢,那就好比说我们有一些这个,比如说审批的状态对吧,那他的他的枚举的类型可能是这个审批中或者已通过或者已拒绝等等相应的这个能力。
20:17
我们可以看看能不能再放大一点,因为有同学反馈可能看的不是很清楚。然后我们啊,比如说我们日常的这些访客类型,比如说什么叫做临时访客或者长期访客等等,这些都是我们的一个通用选项级,就是枚举类型的这个字段。那么我们再看一下我们接下来讲的这个连接器的一个能力,那目前我们可以新建一些连接器,比如说腾讯文档。或者腾讯会议,那么腾讯文档通过这个啊,通过这个扫码的授权,比如说腾讯文档扫码授权,我们就可以去快速的啊去创建一个这样的连接器,那本期这边我就没有创建,然后或者是通过我们的微信支付,那么这边我们可能要选择一个已经认证的小程序,以及这个商户号啊,以及这个小程序绑定了一个商户号呢,我们也可以去啊快速的创建一个微信支付的能力,那他就可以使用,比如说统一下单啊,查询订单,关闭订单,下载对账单等等这些微信支付提供的开放能力。
21:24
那我们目前最近上新的一个腾讯云的短信和邮件呢,它是可以通过我们啊腾讯云的这个啊短信啊,短信推送和这个腾讯云邮件的能力呢,能够方便的让我们在工作流里面去发送短信或者邮件的一些消息通知,或者说我们可以通过这个应用中啊,调用这个连接器的能力去来发送短信或者邮件的推送啊,这些都可以。那我们这边比如说创建好了一个腾讯云OCR识别的能力呢,那我们这里也可以看到它提供的一些相应的,比如说健康码的识别,通信行程卡的识别。和我们一些比如说通用印刷体呀,还有智能结构化的这些常用的OCR的能力都可以啊,快速的去使用,那么当然我们可能需要额外的去针对这个呃,产品的服务去去做一些这个腾讯云上资源的购买哈,那我们这边其实都是额外的去做一些这个。
22:18
工作,然后我们接下来重点会讲一下自定义连接器,自定义连接器其实就是我们可以理解它就是一些。啊,我看到现在应该是可以看清好。那我们可以看到现在这个自定义连接器的话,它可以,呃,我们刚刚讲到它其实就是一些这个open API的这个创建的方式。啊,它可以理解成是一些服务端的接口等等,那我们还提除了除了从这个空白创建以外呢,我们还提供两种呃创建方式,比如说呃,其实很多开发的小伙伴都会熟悉的一个posman啊,那我们posman这个可以导出2.1版本的这个API的接口,那我们也可以通过这个方式去快速创建一些啊这个接口,或者我们通过open API,就是SSPA或者杰的这个语法呢,它也可以去啊创建出我们的这样的一个HTP形式的一个接口,那这边我们简单的创建一个这个空白事例。
23:19
然后我们可以看一下它相应的一些能力,那大家可以看到现在这个连接器它是空的,没有方法,那我们可以看一下它支持哪一些方法,比如说我们可以支持这个ATP请求,那这里就可以填写一些简单的URL。以及这个对应的,我们比如说。好,我们来请求一个。Example的这个URL对吧,然后它的方法呃,就是get post等等,那我们也可以是定义它是否有一些入或者出餐,假设我们现在有一个ID的一个这样的一个字段。那么点击确定之后,当我们调用它的时候,就需要把这个ID作为入参。
24:02
去做一个传入,好,那这个时候其实我们有几个这个做法,大家可以看到哈,在我们这边啊,有提示说我们可以通过模板的语法来使用入参中的字段,比如说这个,呃,入参现在是ID嘛,那我们可以在哪些地方去使用呢?比如说我们的URL,因为有一些这个rest for的API,它是需要支持一些动态的ID,所以我们可以在这个地方去通过点ID来使用我们的这个入,或者呢,是在我们的那个,如果是get请求的话,它就是一个。它就是一个query的参数,那这个时候我们也可以通过啊,刚刚的双发括号的形态,或者是通过我们这里可以选择这个入参去来快速的录入成我们的这个参数,那同样的我们也可以在header里面去做一个这个参数的映射。那当我们如果是post请求的话,我们也可以在body的这个里面去使用,比如说我们常用的类型,那如果我需要将这个ID作为参数传入的话,我们需要通过刚刚的一个语法啊,大家注意,如果是字符串类型的话,记得要用这个双引号去括起来,然后我们这边有个点ID,那它就可以。
25:18
啊,在这个杰森的包体里面,把我们的入参作为一个参参数啊,传递到我们的请求里面。最终我们通过这个方法测试呢,就可以去啊,调用和运行我们刚刚的相关的一些能力。因为我这边用的是一个势力的URL。啊,所以啊,这边还没有去,这个可以可以正常调用,但我们现在也可以看到HD请求的一些相关的这个日志啊,包括它的返回,返回体等等都可以。好,那这个是我们一些动态的参数,叫做入参,它是在方法调用的时候会去传入的,那我们有没有办法是针对一些通用的一些环境变量呢?我们在这边有一个管理变量,那有时候我们的这个ul在不同的方法里面可能是需要去复用的,所以我们这里会有一个可以设定一个公共变量,比如说董命,然后我这边把刚刚的一个sample。
26:17
点。com作为我们的一个公共变量,那么这个时候呢,我们可以在这个。呃,URL里面直接把刚刚的这个。替换成刚刚的变量,那我们这边叫env点呃,Doin。在这个时候我们就可以使用公共变量的方式,那么同样的,在我们的这个query体里面,或者包body体里面也可以用相关的能力,同时呢?呃,在快捷操作里面也可以看到,它最终也支持了一个公共变量的能力啊,我不好意思哦,我说错了,这个公共变量这边应该是个vas啊,然后公共变量的话,我们这里可以看到它的一个,呃,变量的形态是什么?那么同样的我们也可以看到它这里可能如果是小程序类型的话,也可以有一些啊,当前调用这个小程序的,比如说这个open ID。
27:11
或者是这个APPID,或者是我们有一些这个,呃,匿名用户或者数据源的一些相关,特别是常用的是什么呢?当我们是体验环境的时候,需要就我们有一些这个第三方接口呢,它会需要说是。替换成啊,我要判断一下我现在是开发环境还是测试环境,那么我们可以通过这个Env.is preview来代表说我现在调用这个接口的是体验环境还是正式环境,那这个时候我们的接口就能够完全根据我们的这个请求的这个环境来做一些相应的数据的处理。好,那讲完了这个方法之后,HTP请求的方法呢,我们还会有一些自定义代码的能力,那这边其实就是一些啊GS的操作,那这个大家可以到时候去我们的这个文档里面,可以看到相应的这个Co些相应的。
28:07
那最终这个return的值呢,会映射成我们的这个啊出餐啊,最终就是就是我们如何去返回这个方法的参数。那很多小伙伴还会问,我们现在这个云开发云函数是什么呀?这个云开发云函数呢,其实就是我们云开发的一个能力,它能够啊使用云函数的能力去做一个完整的note server端的一个服务,比如说我们这边可以去,呃,大家可以看到在这个函数大码里面,我们这边可以去通过呃上传一个完整的比如说node JS的包啊,NPM包,因为很多小伙伴也反馈说,诶,我想要在自定义代码里面用很多自定义自己的一些NPM包该怎么用,那我们就会推荐他使用云开发云函数来使用完整的node GS的能力。这个有大家有兴趣也可以去,后续可以了解一下好。那我们最近自定义连机器新上了一个能力,就是我们的OS健全,那么在OS健全的这个里面呢。
29:11
呃,它可以支持我们的这个O的健全,比如说我们现在目前只支持这个client的一个方法,那么它通过我们取token client入一些secret ID,呃,这个client I client secret的话,它就能够去通过换取我们的token,然后在我们的这个在然后在所有的HTTP请求里面呢,我们就会在请求题里面。去把我们的token啊传递进去,那当然我们很多情况下,因为我们大家知道很多服务的oos它可能不一定是标准的,比如说企业微信,它就不叫client ID和client,它叫那个Co ID和APP,对吧,那这个时候我们就可以去修改这些字段,来映射我们对应的一些。这个client ID和secret的这个这个数据。
30:05
也就是我们上面填的这个数据,最后会映射成啊,比如说。企业微信这边的Co ID。和这个APP secret对吧,那最终它在请求里面就会反映出它是a Co ID等于上面填的这个字段,然后APP secret等于这个client secret。然后呢,我们这边也会有一个出餐的映色,比如说这个接口返回的token。它会啊,如果不是叫access token或者是exp in的话,那你也可以自己去修改一些对应的映射来满足我们这边的一些关系,那么这边的请求时的token是什么意思呢?默认的话我们会把这个access token呢加在URL里面,那么也可以根据需要是把它加到header里面,或者是加在body体里面,这个也是可以去定义的,包括它在这个里面的字段名,到底是叫access token还是叫token等等,这些也是可以去啊定义的,那常用的话可能是had的,然后开的里面可能会通过有一个这个啊请求头的前缀,比如说bera等等啊,这个也是可以去做相应的定制的。
31:16
那这些其实都是我们标准的这个OS的这个协议。然后刚刚我看到这个直播的里面,有一个小伙伴问了一个问题,就是没有听清楚什么是自动识别开发环境是这样的,我再介绍一下,就是我们在HTP请求的时候呢,可以通过这个呃,参数你可以看到哈,在我们的quality里面,或者或者body里面呢,你都可以使用,我们这里有一个叫做。是否为预览环境的能力,就是这个env点这个is preview,那么它的话就能够说明什么呢?因为我们大家都知道,呃,微达它的应用是有一个开发的状态和一个最终发布的形态嘛,那么这个时候。
32:01
呃,就是在我们开发的时候,如果调用了连接器的话,它在这个is preview的话,它就会变成true,就代表说我现在是一个开发环境。的调用,然后如果它是一个已发布的应用的话,这个时候这个Env.is preview会变成一个false,那这个的话,它就是能够表明说啊,我当前调用这个自定义连接器的方法是,嗯,是开发的状态还是一个生产环境调来的这个方法啊,能够做做做一个这样的区分,对。这个也是方便我们的用户在进行一些开发联调的时候的一些能力。好,然后我们这边介绍完了一个自定义连接器的能力,因为这个自定义连接器可能是大家日常中还是用的比较多的,因为很多系统可能都已经有了啊一些这个常用的这个。就是已经有了第三方的服务,那这个时候我们就可以通过自定义连接器。去来调用。好,那我们接下来会呃,已经介绍完了我们相关的数据源的一些能力啊,那我们接下来看一下我们该怎么样合理的去使用这样子的一个呃功能,那今天我给大家带来的一个实例操作呢,是关于一个防疫信息采集的能力,那在这个模块里面,我们我我先介绍一下他的背景啊,它大概就相当于是我们现在啊,可能学校的开学或者是一些嗯,企业他需要员工去上传他的健康码或者行程码,行程卡。
33:32
那在很多情况下,我们以前可能都是啊,通过腾讯文档或者问卷之前的那个能力,就是呃,上传在Excel里面啊填报,然后我的人工去审核,人工去查看这些图片是不是这个呃绿码,然后有没有做核酸对吧,那现在的话,我们可以通过腾讯云的这个OC的能力来快速的去识别出我们健康码的状,我们可以看一下相应的一些接口啊。
34:00
我们通过这个连接器,我们可以讲一下,刚刚也没有提他该怎么创建这个连接器,那这个连接器呢,其实它使用的是我们腾讯云的能力,所以它会通需要你填写腾讯云的ID跟腾讯云的,那这边我们也会提供,就是可以看到点击跳转呢,我们就可以在这边去快速的创建腾讯云的密钥。那因为腾讯它其实也我们也使用的是腾讯的A嘛,那这边我们会使用的能力,其实是腾讯云的这个文字识别。比如说我们这边会有一个通用识别的这个能力,那其实就是用了这个产品,到时候后期大家也可以去详细的看一下,那么我们今天不会重点的去介绍这个,那我们回到我们的这个能力里面来呢,就当我们填报了这个相应的能力之后呢,我们这里就可以去调用相应的接口了,比如说啊,我们今天会展示着健康码的识别,那这边呢,它会。需要我们传入一个这个图片的URL的地址啊,或者是你如果是BASE64的话,你也可以啊,当然我们现在可能V拉它的那个上传组件是可以支持这个image URL的,所以我们可以用这样的一个能力。
35:09
去来,最终它可以识别出什么呢?相应的啊,这个比如说这个测试的结果啊,Request ID或者是啊那个呃,是否打了疫苗等等这些能力,我们可以通过这边的描述的文档地址去来详细的看到这个接口大概。啊,提供了一些什么样的这个字段。这边都是有一个呃对应的能力的,这个大家可以看一下,好,那么我们现在要做的一个能力啊,我们讲介绍完了这个图样识别,那我们就会去啊看看我们,呃防疫这个就该制定我们现在的这个数据模型了,这个数据模型其实就定义了说我这个表单要上传哪一些内容,那我们这边我已经预置了一些,就不耽误大家时间,然后我们可以看到,我们根据刚刚的那个接口的返回,可以去看到,我们可以读到一些这个识码人的姓名,然后健康码的更新时间,颜色,核酸检测的这些相应的时间,对吧,包括我们健康码这个字段是如何上传的,那我们如何将这个模型变成一个表单呢?我们可以。
36:13
跟着我的这个节奏哈,一起来。大家可以看到我们现在可以新建一个,因为这是一个C端的应用啊,通常是需要给在微信端或者他测去使用的。嗯。然后我们可以点击这个新建自定义应用,然后我们建立一个web端的,或者叫H5PC端的一个应用,那我们这边把它改名字,比如叫做呃,健康码上报。点击新建完成后呢,我们因为今天给大家演示嘛,所以我们就是完全从空白去来创建一个。那这个时候因为我我这边呃,就不过多介绍一些样式了,我们来看一下这个数据表单该怎么采集,这个时候我们拖入一个表单容器。
37:09
那这个时候我们在这里去选择新增嘛,因为我们是一个提交的能力,所以我们会选择一个防疫信息采集的表单。这个时候你可以看到他已经把这个相应的能力都已经啊带入到里面了啊,然后在这个里面呢,啊,我我我我这边有一个小小的错误,因为我把这个。把这个防疫的这个类型改成了这个文本啊,其实我们这边应该是个图片,大家可以看到啊,我们刚刚也介绍了这个,其实其实如果它这个数据是一个文本类型的话啊,对,如果它是一个文本类型的话,它实际上就会显示出是一个这个啊文本类型的输入框嘛,但是我们知道这个健康码实际上我们是要上传一个图片类型对不对,所以我们应该是要把它这个呃改变一下,因为我们现在这个。把它重新建一下,叫做健康码。
38:05
图片。那我们也不用改它的标识啊,我们可以选择一个图片类型的字段,然后这个把相应的一些数据模型的这个东西都勾选上,然后点击是。比如说十兆,然后我们点击一个确定,最后点击保存。我们就可以把这个健康码图片这个改成一个图片的类型了,然后这个时候呢,我们刷新一下我们当前的这个应用编辑器啊。然后这个时候呢,我们把这个我们重新生成一下,重新来一遍,把我们这个表单。表单容器再重新拖入,选择刚刚的一个防疫信息采集,那这个时候我们就会看到这个健康码的图片,它就已经在这儿了,它是一个图片的类型。
39:02
然后我们这边也选择上传这个单张图片,并且由于我们这个肯定是要用户首先去那个。呃,首先去上传的,然后下面这些信息我们也不需要用户去填入对吧,因为我们的这个信息也也是希望说用户能够啊直接去读的,所以这个时候我们来看一下我们想要做的一个逻辑是什么呢?我们希望用户上传了这个。健康码的图片之后啊,然后调用我们的OCR识别接口,然后把下面的表单自动填充,那这个时候我们怎么做呢?大家可以看到在这个我们可以点击这个全部啊,然后啊,可以看到在这个健康码的图片里面有一个行为。那在这个右下角这个行为里面,我们点击,然后哦,我估计大家可能也看的不清楚,我看这个是不是能够放大一些。就先把这个预览区关掉吧。然后我们把这个相应的这里给放大一些。
40:02
这个应该应该够大了。然后在下面这个行为,因为我们希望是用户上传之后的一些行为,对吧,所以我们可以在这个上传成功之后去呃做一些什么操作,那这个时候我们可能要呃有一个能力啊,就是因为为大这边呢,上传呢,它是上传到我们的一个呃临时的对象存储,所以它这个上传成功,它并不会直接将这个地址返回,我们需要去做一个获取的这个URL的能力。所以我们需要添加一个自定义的方法,那这个方法呢,会需要我们去,呃,获取刚刚这个上传的结果的一个URL来去获取到一个真实的地址,这边我们需要用到一个前端的这个think的一个能力哈,这个可能是比较,所以我们需要把这个地址,因为我们要把那个image的URL传递给这个OCR识别,对不对,所以我们需要有一个图片上传后的地址。因此呢,我们来写书写一下。
41:03
Returnwa,然后呃点cloud.get URL。然后大家可以看到啊,这个方法,大家可能会问这个方法的一些相关的API是什么呢?我们可以看到在咱们这个呃,官网上面这边会有一个文档,这个链接地址,到时候我们我也会呃输入在公屏那边吧,到时候可以看一下我们的这个整个一个接口,那么在数据源的这个方法里面呢,我们会有一个这个。呃,cloud.get time file URL的一个能力,所以我们在这边也可以把它输入这个,获取我们这个临时文件的URL,然后呢,把这个event.detail呢,在之前呢,直播里面我们也介绍过,它是一个事件的一个回调,就相当于是我上传成功这个事件,这个event,它的一个数据就是这个,然后event.detail点。
42:03
Value,然后我们就可以拿到当前上传的这个地址了,然后我们这边要写一下这个方法的名称叫做get image。URL。好,这个时候我们点击添加方法,这个就完成了,我们点击确认。那这个时候上传的事件就完成好,我们拿到了这个image URL的话,我们需要传递给刚才的这个呃连接器,所以我们在这个选择成功,选择调用数据源方法,选择一个我们这边的腾讯云图像识别的连接器,选择健康码识别。然后在我们这边图片的URL地址这里呢,我们去选择刚刚上啊,刚刚上一个事件的这个event的回调,所以我们在这边点击这个绑定,然后去实现一个event。一跳。把这个表达式写在这个里面,然后点击绑定。
43:01
哦哦,等一下啊,这个这个的返回结果我们可以看一下,它其实在自定义连接器这里啊,我们可以看一下,因为它的这个event detail其实就是它的整个返回体,那我们这里可以看到它其实是包在一个response的这个数据里面,所以我们需要拿到这个相应的里面的这些字段,因此呢,我们需要在这个方法里面,在这里写上response。代表是这个返回体的一个结构,然后去点击绑定。那这个时候哦哦,我说错了,这个还是因为。这是因为哪,是因为我们刚刚那个拿到的那个URL是叫这个名字啊,所以我们就把它写递到这里,那我们点击了这个确认之后呢,我们就会把它传递到这里,那我刚刚讲的那个response是什么呢?是这个调用了连接器的方法之后,它会返回的一个数据,那这时候我们啊,由于我们这个字段里的这些值呢,是需要我用到这个response的这个结果去回显的,所以我们需要在这里去创建一个变量,比如说我们在这个页面里面就选择一个叫做data的变量。
44:06
啊,或者叫这个,呃,对就叫对吧,然后我们选择一个对象。选择一个对象类型的变量,然后把这个呃,初始值设置成一个空的这个。对量,然后我们把它保存,那这个时候呢,我们这个调用连接器的方法的时候,数据源它已经会返回了,对不对,那这个时候我们选择变量赋值,把刚刚的这个结果返回给我们的这个赋值,给我们的这个啊data这个对象,所以呢,我们需要去选择我们这边的一个值是什么呢?就是点detail点。Response。把这个值作为我们刚刚的那个接口返回的一个值,然后点击确认。那这个时候我们待会儿上传呢,流程呢,就会相当于什么呢,就是。我们上传了图片之后。刚刚那个对象里面就会拿到识别出来的结果了,那这个时候我需要把这个字段回显到里面呢,我们可以看到这个输入值啊,这个表单控件的输入值,我们可以去选择这个变量,把它复制一下它的这个变量路径。
45:11
然后比如说这个是,呃,应该是个名字,所以我们就可以把它写成比如说name,持卡人就是这个识别码的这个名字的name。然后去做一个这个绑定,那健康码的更新时间,这边叫time,那我们也可以用相同的方式。去把它形成一个这个。Time。健康码的颜色。然后这边可以选择这个应该是color,所以我们就把它变成。发了。然后这个叫做testing inter,我们也可以把它做成在这里面去做一个点。Testing interval。
46:05
然后核酸的检测结果,我们这边叫做testing。点击绑定。然后核酸的检测时间,这个叫testing time。还有最后一个这个。嗯。C。然后我们就相当于把这个值都绑定了,那它最终的一个效果是什么呢?就是我们当我们可以在这边去做一个预览哈。
47:03
那它最终的效果就是我点击这边。上传一个,比如说我们的。呃,一个文件,我看一下我这边有没有上传一个文件。对,比如说我一个有一个健康码的文件。点击大大家就可以看到,这个时候我们就已经把刚刚的指挥显回来了,对不对,然后这时候我们可以看到,诶这里好像有个检测时间没有没有写进来,它是什么原因呢?我们可以看到这个可能是拼写错了,一个叫testing time。然后我们看一下它的表达式是不是没有写对啊。啊对,你看他这边漏了一个,我们漏了一个字母。所以我们把它再重新的写一下。点。
48:00
Testing。然后去做一个。绑定。然后我们可以在这边也加一个这个事件啊,比如说我们调用数据源方法,这个里面可以一些,比如说呃,是不是显示。显示加载啊对吧,这样方便我们去做一个识别好。做一些优化,然后这时候可以看到我们再重新上传一下我们刚刚那个图片。它就会有一个这样的loading的效果,最终那个结果返回的时候,大家可以看到这里的数据就已经被提交到这里了,然后我们可以做一个提交的按钮,好,这个时候我们的数据就已经提交到后台了,那待会儿我会介绍我们怎么看到这个数据哈,然后我们可能还要再做一些小优化,是什么呢?就是诶,我们希望我们的用户是不能输入这些不能修改的,所以我们再回到刚刚的这个编辑编辑态里面。
49:00
然后去点击这里面的高级属性。比如说我们把它禁用。对吧,这个时候我们将它全部都禁用,那这个时候用户就没有办法再去做一些啊修改了。核酸的检测时间,这个我们也把它改成。禁用,然后域名接种,这也改成禁用。那这个时候的效果呢,我们就看到在这个情况下,它是没有办法再去输入了,同时我们再上传这个文件的话。他最终的这个效果也会是。相当于直接回显,然后我们看到它也不可以再去修改,然后他只能做提交啊,就相应的这样的一个能力,好,那我们这样子就相当于把这个表单提交的这个功能给介绍完了,那我们怎么看这个数据呢?这个时候我们就回到我们刚刚的应用里面,我们需要做一个这样的一个模型应用。
50:10
模型应用的话,就相当于是我们一个后台管理的一个能力,比如说我们这个叫啊疫情。啊,健康码。呃,数据管理对吧,我们可以创建一个这样的管理后台,然后点击新建。这时候大家可以看到,我们可以快速的去选择一个数据模型,然后去创建它的一些c rud的页面,这时候大家可以看到我们在这个页面里面其实已经预制了几个啊,就是它的一个呃,表格页,列表页,它的创建的表单页,更新的表单页和一个详情页,这个时候也是比较快的一个能力。然后这个时候呢,我们可以看到,呃,我们也可以预览一下,这个时候应该可以直接看到刚刚那条数据了。
51:02
对吧,这就是有一条是我之前上传的,有一条是我刚刚上传的,所以这边都能看到说我们的这个啊,所有的这个时间是什么,但是呢,我们刚刚也讲啊,因为这个可能。啊,屏幕有点大,所以他看的不是很清楚,那我们刚刚也说了,那我想要快速的去,呃,过滤我的这个健康码的这个颜色和健康的状态,该怎么做呢?这时候我们就说了,我们要使用我们刚刚的这个视图的能力,可以看到在表格的这个。组件里面呢,我们可以选择启用视图或者不启用,如果启用视图的话,我们就可以选择刚刚那个已经创建好的一些这个,呃。视图,比如说啊全量的,就是这个防疫信息采集,或者是检测合格的,我们刚刚看的检测合格就是健康码等于绿色,然后那个。间隔时长是那个24小时对吧,是这个意思,然后那个核酸检测结果是这个阴性,对吧,我们要做一个这样的适应,所以所以我们可以看一下啊,我们也也给大家快速看一下。
52:10
就在这个视图里面,我们拿这个检测合格来说,那它的一个设置条件,刚刚讲的排序筛选。设置我们可以看到啊,这边我还漏了一个对吧,我们需要将这个,呃,应该是建那个。叫什么?呃,健康码颜色啊,核酸检测结果,这个我们等于。阴性。对吧,然后点一下确定。保存。然后发布。我们就相当于这个视图就保存完了,那这个时候它只会显示什么呢?就是健康码是绿色的,然后它的那个呃,结果是阴性的等等这一系列,那我们在这个应用里面呢,我们就可以去选用这个视图啊,那我们想要说诶我想做几个这个分页可不可以做可以,那我们也通过这个组件这边的一个叫做。
53:12
有一个组件叫做分页,我看一下啊。有点眼馋。啊,选项卡,我们这个叫选项卡,然后你把它拖入这个我们刚刚的这个应用应用上面对吧。然后呢,我们把这个表格突入进来。然后这个时候呢,我们可以把这个标签改一改名字,比如说我们这边有一个,呃,正常,然后全部。对吧,然后这边有第二个叫做。这个叫做正常。
54:00
然后这个叫呃呃异常。然后这个叫全部。那这时候呢,我们就可以啊,把这个表格,比如说我这边叫正常的,那我只能启用叫检测合格。对吧,然后我这个叫做异常的这个分类呢。呃,我这个叫做异常的这个分类呢。就可以啊,我我我把它复制一下好了,比如说我们这个组件,然后选择CTRLC,然后我们把它切换到异常的这个页面。然后去做一个ctv的一个。拖入,把它拖到这里。对吧,然后我们把它检测异常。然后再点击这个全部。把这个表格也拖到这里面,然后选择一个异常啊,全部全部就是不启用呗。
55:05
然后这个时候呢,我们就可以看到在预览里面,我们就可以是去实时的切换,我们刚刚的这个正常有哪一些异常的数据有没有啊,我们刚刚也没有对吧,然后全部有哪一些,那这个时候就能快速的去帮我们去查看出我们的这样的一个数据。啊,所以这就是呃,我们刚刚讲的视图的一些相关能力该怎么样去用,还有这个它的一些相关的场景,对吧,这些都是比较常用的一些情况,那么在一些其他的数据的情况,呃,像我们经常会有一些呃,已报销啊,啊,或者是未报销,已提交未提交等等,这些是很常用的一种表格的分类,所以我们都可以通过我们的视图的能力。去做一些这个筛选,当然这个视图也是用在一些,比如说需要复复用的情况,如果不复用的话,我们可以也可以通过什么呢?也可以通过我们的表格的自己的一些筛选能力,比如说我们现在可以支持这个,呃,一些数据的这种,嗯,其他的这个,比如说刚刚讲的那些能力都可以在这边也去实现出来,那么在我们的视图里面,其实还有一些能力是什么呢?就是我们可以支持一些关联条件的查询啊,当然我这边没有,那其实就是我们这边可以选择一些关联模型,然后关联模型下面的一些字段可以去做一些查询。
56:27
好,呃。大概今本期的这些就在这里啊,大家如果可以看一下,如果有什么问题的话,大家也可以在这个直播中,那个我我也有在看哈,看我们的这个评论,大家如果有什么问题的话,也可以呃问一下,然后然后我们没有的话就可以。好,我看一下大家有没有什么想问的。
57:14
好,要不那本期我们的这个。呃,直播。就。刚刚有小伙伴说这个怎么试用,试用的话,你现在直接注册到我们的这个腾讯云的话就可以啊登录啊,注册一个腾讯云的账号,然后登录到这个啊,点开我们的这个微达,它就可以去免费试用一个月啊开通这样的一个环境。呃,我刚刚有看到小伙伴说那个。表单切换了数据源之后。数据模型会清空对吧,这个是呃,表单切换了数据源之后会清空,是因为这样的,就是我们刚刚也提到了,如果你是一个这样的表单的话,呃,当然如果你已经切换了数据模型,它肯定是会做一些切呃切换的,比如说他会问你是不是要清空表单组件,如果你选择取消的话,它是不会。
58:17
它就相当于是不会清空,然后这个时候他绑定的它就会呃,就是他他一定会清空你的这个,因为你不同的这个模型的话,它的字段不一样嘛,对吧,那你这个表单怎么会呃相同呢,它肯定还是会有一些区别的。对。啊,是这样,还有同事,还有同学问这个录入框上传扫码图才变为禁用的吗?不是啊,就是你可以一开始就把它变成禁用的,就在我们这儿,你可以去直接把它在这个设置这里里面去把它变成禁用,那这个时候的话就相当于用户从一开始就不能说它只能去上传图片。啊,是这个意思。
59:04
对某个字段设置条件语句的话,有两个方式,第一是我们刚刚讲的数据模型的这个视图。他可以在这里去针对筛选,然后去选择某一个字段,比如说我们这个所有人对吧,那或者是创建人。比如说这个创建人,那么他可以选择说。啊,包含不包含,等于或不等于。对吧,等于当前用户或者什么,这边我们都会有一些相应的这个筛选条件,或者是你直接在这个表格的这个数据筛选,这里也可以去创建多个条件啊,比如说这个,呃,接种的信息是等于什么,或者是这个健康码的颜色是等于绿色,还是说它也可以通过一个变量啊,你可以选择我们这个全局的一些变量去做一些这个啊筛选等等这些都可以,因为因为是这样的视图,它肯定就是一个默认的嘛,所以它没有支持变量,它只支持常量。
60:02
对,然后但是这个里面在应用中,它是可以根据变量的形态去设设置筛选的。这个字还小吗?因为我可能已经放的比较大的了,所以。这个字其实不重要啊,这个字其实就是我们那个字段的一些名字,这个其实就是你字段名,然后这个字段名你选择它了之后,你可以去选择一些判断条件,比如说它包含什么颜色,或者是呃不包含,然后或者是等于等等啊这样的一个形形态。然后呢,我刚刚也也讲了,说我们这个应用其实用的是连接器,但是其实连接器跟自定义连接器的用法是一样的啊,所以啊,你连接自定义连接器也可以像刚刚一样,这个连接器一样去返回一些数据和参数,然后你最终来实现一些在应用中去实现通过事件啊,比如说我们刚刚通过这个上传事件调用了。
61:13
这个调用了这个数据源的方法对不对,所以你这里后续自定义也是可以的。条件是自己设置的数字范围,你是说呃,比如说一到几或者是什么是吗。你刚刚说的那个是可以这样做的,就是我们假设啊,在这里如果你是有一个数字类型的,我我这边应该可能还没有一个数字类型的,如果是一个数字类型的话,它可以你可以创建两个啊,一个是这个呃筛选,比如说我假设这个这个字段是一个数字,然后你可以是啊大于等于,因为我这个不是数字,所以你可以选择一个大于等于啊是多少,然后且这个字段小于等于多少。
62:09
这样子的话,你就可以实现一个范围了。录入框能不能开始可以的呀,就是也它是这样子的去做的,比如说我们这个一开始他这个禁用,因为你可以看到我们这个禁用后面它是可以通过绑定表达式。绑定数据的,所以呢,你可以认为是我们,呃,假设啊,我这边是这个上传,然后你看我们这边不是有个上传成功嘛,对吧,你可以在上传成功这边加一个事件,比如说我我改一个上传成功,然后一样的去set一个变量,比如说我把刚刚那个啊,我可以创建一个is disable的变量,对不对,然后你把这个is disable设置成true,那么然后在下面所有的这个所有的这个禁用呢,你就绑定这个变量is disable。
63:13
然后它就会全部变成禁用了。嗯。就是利用变量的能力就可以实现刚刚的那个能力哈。好啊,我看本期这个直播的时间也差不多到了,然后那个也非常感谢各位小伙伴的支持哈,在线里就1000多位的这个小伙伴,然后如果大家有问题的话,也可以随时在我们的这个合作,就是有一些论坛,这个论坛的地址的话,也可以在我们的官网上面可以找得到,那我们的BBS上面也会有非常多热心的,不仅是我们的这个产品的同学。
64:08
对,有回放的啊,也不仅是我们产品的同学,也会有很多社区热心的小伙伴们会一起帮我们来解答对应的问题。啊,也欢迎大家在我们的社区上多多回多多那个响应,可以多提问题,也帮助我们的维达可以快速的成长。好,那我们今天的直播就到这里啦。
我来说两句