更新记录
1.0.4(2025-08-20) 下载此版本
优化 callAdapter
1.0.3(2025-08-19) 下载此版本
移除 getUniIdCo 增加 callAdapter
1.0.2(2025-07-14) 下载此版本
1
查看更多平台兼容性
云函数类插件通用教程
使用云函数类插件的前提是:使用HBuilderX 2.9+
x-uni-id-co 模块使用说明
概述
将 uni-id-pages 中的 uni-id-co 云对象抽离出来作为公共模块使用,同时支持在自己的云函数/云对象中调用 uni-id-co 云对象的方法 uni-id-co 文档
如何调用 uni-id-co 云对象的方法(通过新增模块 callAdapter 获取 uni-id-co 云对象实例)
callAdapter 用于适配在云函数(cloudfunction)和云对象(cloudobject)中调用 uni-id-co 云对象的方法
为什么不使用 uniCloud.importObject('uni-id-co')
调用要使用 callAdapter
这种方式调用?
因为云函数有冷启动过程,详见云函数冷启动、热启动 在需要和自己业务逻辑搭配使用 uni-id-co 时影响请求响应时间
在云函数中使用 uni-id-co
const { callAdapter } = require('x-uni-id-co');
exports.main = async (event, context) => {
const uniIdCoInstance = adapter.cloudfunction(context, event);
// 使用 uniIdCoInstance 调用 uniIdCo 的方法
const result = await uniIdCoInstance.login(event);
return result;
}
在云对象中使用 uni-id-co
const { callAdapter } = require('x-uni-id-co');
module.exports = {
_before: function() {
// 初始化逻辑
},
login: function(params) {
const uniIdCoInstance = callAdapter.cloudobject(this);
// 使用 uniIdCoInstance 调用 uniIdCo 的方法
return uniIdCoInstance.login(params);
}
}
依赖的 DB Schema 表结构, 使用前确保这些表已创建
uni-id-users
opendb-verify-codes
uni-id-device
opendb-open-data
opendb-frv-logs
uni-id-log
opendb-device
新增模块
callAdapter 模块, 用于在自己的云函数/云对象中调用 uni-id-co 云对象的方法
const { callAdapter } = require('x-uni-id-co');
模块结构 (已开放出 uni-id-co 所有的模块, 根据目录查找相关功能函数, 在使用以下模块时注意 this 的问题)
common 模块, 对应 uni-id-co 的 common 模块
const { common } = require('x-uni-id-co');
const constants = common.constants;
const error = common.error;
const cipher = common['sensitive-aes-cipher'];
const universal = common.universal;
const utils = common.utils;
const validator = common.validator;
config 模块, 对应 uni-id-co 的 config 模块
const { config } = require('x-uni-id-co');
lang 模块, 对应 uni-id-co 的 lang 模块
const { lang } = require('x-uni-id-co');
lib 模块, 对应 uni-id-co 的 lib 模块
const { lib } = require('x-uni-id-co');
middleware 模块, 对应 uni-id-co 的 middleware 模块
const { middleware } = require('x-uni-id-co');