开发指南
自定义接口开发
自定义接口支持开发者通过编写代码来实现业务逻辑。目前支持通过JavaScript语言开发。自定义接口内置的SDK提供了数据模型操作、HTTP调用、缓存、锁等常用能力。
sdk调用方法为:LC_SDK.moduleName.function(params...)
各个模块名称以及可供调用的方法如下表:
模块名称 | 模块说明 | 方法名称 | 方法说明 | |
---|---|---|---|---|
model | 数据模型 | dataCreate | 新增记录 | |
dataBatchCreate | 批量新增记录 | |||
dataDelete | 删除记录 | |||
dataBatchDelete | 批量删除记录 | |||
dataUpdate | 更新记录 | |||
dataBatchUpdate | 批量更新记录 | |||
dataQueryItem | 查询单条记录 | |||
dataQueryRecords | 查询列表 | |||
uuid | uuid | getUUID | 生产UUID(32位) | |
cache | 缓存能力 | getObject | 获取指定key的值 | |
setObject | 设置指定key的值,可设置过期时间 | |||
setObject | 设置指定key的值 | |||
delete | 删除指定key的值 | |||
expire | 设置key的过期时间 | |||
setLongValue | 设置指定key的long类型值 | |||
getLongValue | 获取指定key的long类型值 | |||
setHashLong | 使key对应的map中,设置键hk对应的值long类型值 | |||
hashLongIncr | 使key对应的map中,键hk对应的值以long类型delta自增 | |||
hashLongDecr | 使key对应的map中,键hk对应的值以long类型delta自减 | |||
delHashKey | 使key对应的map中,删除键long类型对应的值 | |||
getHashLongValues | 获取key对应的long值集合 | |||
getHashKeys | 获取key对应的hashmap的key集合 | |||
getSetMembers | 获取key对应的set的value集合 | |||
addToSet | 往key对应的set的添加单个(多个)value | |||
removeFromSet | 往key对应的set的移除单个(多个)value | |||
scan | 获取pattern匹配的key集合 | |||
lPush | 将一个值插入到列表头部 | |||
rPop | 移除列表的最后一个元素,返回值为移除的元素 | |||
batchRPop | 批量移除元素 | |||
lock | 锁能力 | lock | 尝试获取锁 | |
unlock | 释放锁 | |||
sql | 自定义sql查询 | execute | 执行自定义sql(只支持查询) | |
http | http调用能力 | call | 调用HTTP接口 | |
connector | 连接器调用能力 | executeMethod | 调用连接器动作 | |
api | 调用其他自定义接口 | call | 调用其他自定义接口 | |
file | 文件操作 | readTxtFile | 读取TXT文件内容 | |
readExcelFile | 读取Excel文件内容 | |||
writeToExcelSync | 写入数据到Excel文件 | |||
userInfo | 当前登录用户信息(此为一个对象,非一个模块,获取属性时不需要加括号如:LC_SDK.userInfo.userName) |
以下是自定义接口的主要构成:
function main(params) {
// 这里打印方法入参。可以通过 params.字段标识 的方式获取参数
console.log("params = " + JSON.stringify(params));
/**
* 可以在这里编写业务逻辑,例如:
* 1. 使用 LC_SDK.model 来操作数据模型数据;
* 2. 使用 LC_SDK.http.call 来发起HTTP请求;
*/
var str = "Hello Lowcode!";
print(str);
// 这里返回JSON结构的数据
return {"data": str};
}