数据源是腾讯云微搭低代码的重要能力。数据源本质上是一系列操作数据的方法集合,通过对数据源模型的设计、对页面组件的数据绑定,可快速实现各类应用中数据的存储、使用,此外微搭低代码还提供了提供了数据源管理功能,可以创建、管理多个数据源。
近期,微搭低代码正式支持了“外部数据源”,现在,除了在平台中自建数据源,开发者还可以将第三方已有的 HTTP 接口集成到低代码平台, 提供可视化界面录入 HTTP 接口, 也可以通过编写云函数方式更灵活地接入第三方 HTTP 接口,有效提升项目开发效率。
下面就手把手带大家使用微搭低代码平台的外部数据源:
登录微搭低代码的控制台,在数据源管理菜单中点击 新建数据源 ,并在下拉选项中选择【外部数据源】:
我们输入数据源名称和数据源标识,点击 确定 按钮:
1、定义方法
通过设置方法,可以设置数据源的使用方式,可设置多种方法以配合不同场景使用。系统默认配置了新增、删除、更新等方法,可满足多数场景。如有自定义的方法需求,可通过云函数或本地函数的方法进行编写。
在此案例中,以新增一个自定义方法为例:打开刚刚新建的外部数据源界面,点击编辑按钮进入数据源的编辑页面。
在编辑页面点击新增自定义方法增加一个自定义方法。
接着,就进入到外部数据源设置关键部分,需要设置方法的名称、标识、意图,【方法类型】选择 HTTP 请求(HTTP 请求是基于云开发的云函数能力封装, 提供了可视化、快速接入第三方 HTTP API 的功能,目前仅外部数据源支持此方法类型)。
接着,将【入参】设置为 city,url 设置为:
https://restapi.amap.com/v3/weather/weatherInfo?key=5d2d3e6c0d5188bec134fc4fc1b139e0&city=呼和浩特&extensions=base
设置好后,依次点击 方法测试 - 运行测试 。
测试完成后即可看到调用的结果,测试成功后点击【出参映射】。
一切设置好后我们点击 确定 按钮让设置生效:
上述通过 HTTP 的形式会将接口的数据原样返回,除此之外开发者也可以通过编写云函数方式更灵活地接入第三方 HTTP 接口,下面就来改造一下返回的接口:
在数据源里点击新增自定义方法按钮:
方法类型选择云函数:
在编辑器中输入如下代码:
/*** 使用 npm 包 request 发送http请求, 详细使用文档可以参考* https://github.com/request/request#readme*/const request = require('request');
/** 依据 http状态码 判断请求是否成功 */function isSuccessStatusCode(code) { return code >= 200 && code < 300;}
module.exports = function (params, context) { // params 即为入参定义的结构, 可以在 request 的请求配置中使用 params return new Promise(function (resolve, reject) { request( { url: 'https://restapi.amap.com/v3/weather/weatherInfo?key=5d2d3e6c0d5188bec134fc4fc1b139e0&city=呼和浩特&extensions=base', method: 'GET', // 将 json 为 true, 响应结果的 body 会被自动转换为对象, // 在POST请求中, 也会自动设置将 Content-Type 设置为 application/json json: true }, function (err, response, body) { if (err) return reject(err); if (!isSuccessStatusCode(response.statusCode)) return reject(new Error('request failed: ' response.statusCode)); return resolve(body.lives); } ); });};
设置入参的各项参数:
入参定义好后点击 方法测试 按钮:
点击 运行测试 查看输出的结果:
可以看到我们过滤了一些不需要的结果,只保留了需要的数据:
到此,一个外部数据源的简单配置就完成了,可以投入到低码应用的搭建中。
目前有两种使用数据源的方式: 低代码编辑器和数据源变量。
1、在低代码编辑器中使用数据源
低码框架会在低码运行环境中注入全局对象,以便访问不同的数据源及数据源的方法。
2、通过数据源变量使用数据源
在低码编辑器中, 还可以通过变量管理中通过添加数据源变量的方式来更方便地使用数据源。
详情可扫码查看文档:
- END -