更新记录

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');

本插件未经过全面测试, 有问题请在交流群反馈

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。