更新记录

1.1.0(2024-07-01) 下载此版本

验证密码接口增加传入参数类型,不局限于UID,使用更方便

1.0.0(2023-12-16) 下载此版本

初次提交


平台兼容性

阿里云 腾讯云 支付宝云

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


简介

本插件是一个uniCloud云对象,主要用户给用户密码加密验证密码两个功能。
本插件也不算是原创,是从 uni-id-co 剥离整合出来的,核心代码一字未改,主要是把这两个接口给开放出来,可以根据自身业务自由发挥,从而解决 uni-id-co 一些操蛋的限制。
简直要被官方的插件给气死了,各种不合理、蹩脚,提建议也没人搭理,但是不用又不行啊,uni-id 牵扯的太多,完全去掉也不现实,等了几个月也没改变,所以就费力的进行删减整合。
之前的解决办法是在 uni-id-co 的基础上扩展了一个密码加密的接口,可是每次更新版本都要再加回去,改了好几次,真是好烦。。。最终决定还是单独剥离出来吧。

提醒

佛渡有缘人,不明白为啥剥离的兄弟别安装,如果觉得官方的 uni-id-co 用起来很顺手,那完全不需要安装这个,我的强迫症犯了谁也拦不住。。。
至于加密结果是否准确,我觉得问题不大,因为核心部分全部是复制官方的,我只是开放了接口出来,理论上不会有问题,我自身也测试过很多次,完全没问题。

使用

生成密码

const {passwordHash, version} = await uniCloud.importObject('user_password').create('密码');

验证密码

//传入用户ID
await uniCloud.importObject('user_password').check('密码', '用户的uid').then((res) => {
    if (!res.success) throw '登录密码不正确';
});
//传入其他条件(手机号、邮箱、其他能查询的字段)
await uniCloud.importObject('user_password').check('密码', {
    mobile: 
}).then((res) => {
    if (!res.success) throw '登录密码不正确';
});

报错

内部依赖

Cannot find module 'uni-config-center' 是因为没有选择公共依赖模块uni-config-center,用开发工具打开uni_modules/dm-user-password/uniCloud/cloudfunctions/user_password --> 右键 --> 管理公共模块或扩展库依赖 --> 选择公共模块uni-config-center即可

外部依赖

uni-id-co缺少依赖,请在uniCloud/cloudfunctions/common/uni-id-co目录执行 npm install 安装依赖
是因为没有安装依赖,用开发工具打开uni_modules/dm-user-password/uniCloud/cloudfunctions/user_password --> 右键 --> 使用命令行窗口打开所在目录 --> 输入npm install并执行即可解决

隐私、权限声明

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

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

插件不采集任何数据

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

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问