npm install ucenter ucenter --save
Node.js >= 8.0.0 required.
// init
const ucenter = require('ucenter');
ucenter.init({ appId, appSecret, gateway, store: { getToken, setToken } });
// use
const ucenter = require('ucenter').instance();
-
租户 API
- ApiInviteController
- ApiUserController
- AppUserController
-
用户 API
- InviteController
- LoginController
通过用户 ID或者手机号批量获取用户信息
- [params] {Array[Object]} 用户id或手机号
- [userId] {String} 用户id
- [phone] {String|Number} 手机号
- [concurrency] {Number} 最大同时并发数
const res = await ucenter.tenant.batchQueryUser(params, concurrency);
通过用户 ID 获取邀请人信息
- [userId] {String} 用户的 id
const res = await ucenter.tenant.getInviterById(userId);
通过邀请码获取邀请人信息
- [inviteCode] {String} 邀请码
const res = await ucenter.tenant.getInviterByCode(inviteCode);
根据手机号或者用户 ID 获取用户邀请码
- [param] {String} 查询参数
- [queryType] {String} 查询方式
BY_ID
BY_PHONE
const res = await ucenter.tenant.getInviteCode('18666666666', 'BY_PHONE');
通过 userId、手机号获取单个用户信息
- [param] {String} 查询参数
- [queryType] {String} 查询方式
BY_USER_ID
BY_USER_PHONE
const res = await ucenter.tenant.getSingleUser('18666666666', 'BY_USER_PHONE');
通过 userId、手机号获取单个用户信息
- [params] {Array[String]} 查询参数
- [queryType] {String} 查询方式
BY_USER_ID
BY_USER_PHONE
const res = await ucenter.tenant.getBatchUsers(['18666666666'], 'BY_USER_PHONE');
通过userId、appPropertyId、menuResourceId获取用户拥有权限的菜单
- [userId] {String} 用户id
- [appPropertyId] {String} 应用appPropertyId
- [menuResourceId] {String} 根目录菜单resourceId
const res = await ucenter.tenant.getUserMenu(userId,appPropertyId,menuResourceId);
通过用户请求的uri获取用户对该uri的所拥有的角色
- [userId] {String} 用户id
- [appPropertyId] {String} 应用appPropertyId
- [uri] {String} http请求uri
- [method] {String} http method
const res = await ucenter.tenant.getUserRoleByUri(uri, method, userId, appPropertyId);
通过用户中心用户id查询用户信息
- [id] {String} 用户id
const res = await ucenter.tenant.getUserInfoById(id);
签发应用 token
const res = await ucenter.tenant.getServerToken();
验证 token
- [token] {String} 用户 token
await ucenter.tenant.verifyToken(token);
获取 public_key
const res = await ucenter.tenant.getPublicKey(token);
根据 token 中间部分的提取信息去校验其有效性
- [tokenInfo] {Object} tokenInfo
- [sub] {String}
- [p_v] {String}
- [ident_id] {String}
- [i_v] {String}
- [jti] {String}
const res = await ucenter.tenant.validateToken(tokenInfo);
根据应用appPropertyId查询当前应用的api及对应的权限角色
- [appPropertyId] {String} 应用appPropertyId
const res = await ucenter.tenant.getAppApis(appPropertyId);