日常开发中我们经常使用低码平台自建数据源,我们可以定义自己需要的数据字段。但是随着应用开发的深入,有时候也避免不了要调用第三方提供的接口服务,我们今天就带着大家使用一下低码平台的外部数据源。
创建外部数据源
登录低码的控制台在数据源管理菜单中点击【新建数据源】,在下拉选项中我们选择外部数据源:
我们输入数据源名称和数据源标识,点击【确定】按钮
定义方法
在打开的页面中点击【编辑】按钮进入数据源的编辑页面
在编辑页面点击【新增自定义方法】增加一个方法
然后我们设置方法的名称、标识、意图,方法的类型选择http请求,入参设置为city,url设置为https://restapi.amap.com/v3/weather/weatherInfo?key=5d2d3e6c0d5188bec134fc4fc1b139e0&city=%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9&extensions=base
设置好后我们可以点击测试,点击运行测试,我们可以看到调用的结果
成功后我们点击【出参映射】
一切设置好后我们点击【确定】按钮让设置生效
使用云函数改造结果
通过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=%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9&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);
}
);
});
};
设置入参参数
入参定义好后点击方法测试按钮
点击运行测试查看输出的结果
可以看到我们过滤了一些不需要的结果,只保留我们需要的数据
产品介绍
腾讯云微搭低代码是高效、高性能的拖拽式低代码开发平台,向上连接前端的行业业务,向下连接云计算的海量能力,助力企业垂直上云。腾讯云微搭低代码将繁琐的底层架构和基础设施抽象化为图形界面,通过行业化模板、拖放式组件和可视化配置快速构建多端应用(小程序、H5应用、Web 应用等),免去了代码编写工作,让您能够完全专注于业务场景。腾讯云微搭低代码以云开发作为底层支撑,云原生能力将应用搭建的全链路打通,提供高度开放的开发环境,且时刻为您的应用保驾护航。
开通低代码:https://cloud.tencent.com/product/lowcode
产品文档:https://cloud.tencent.com/document/product/1301/48874
技术交流加Q群:1003059706
最新资讯关注微信公众号【腾讯云低代码】