SDKsHarmonyOS商业版
获取用户资料
按 userID 批量查询应用用户的账号级公开资料。
getUsersInfo() 适合加载陌生人资料卡、好友候选人或消息发送者的公开资料。接口按 userID 精确查询;按昵称、手机号、组织或邮箱检索用户,需要先由业务系统取得候选用户 ID。
import sdk, { GetUsersInfoReq, GetUsersInfoResp } from '@openimsdk/imsdk';
const request: GetUsersInfoReq = {
userIDs: ['user_a', 'user_b'],
};
const response: GetUsersInfoResp = await sdk.getUsersInfo(request);
for (let index = 0; index < response.users.length; index += 1) {
const user = response.users[index];
usersByID.set(user.userID, user);
}调用前应去除空值和重复 ID,并控制单次查询数量。返回数组不保证与输入顺序一一对应,应按实际 userID 建立映射。
返回结果
Promise 成功后,response.users 返回已查询到的 IMUser[]:
| 字段 | 类型 | 说明 |
|---|---|---|
userID | string | 用户 ID。 |
nickname | string | 账号级昵称。 |
faceURL | string | 账号级头像地址。 |
ex | string | 业务扩展字符串。 |
createTime | number | 用户记录创建时间,Unix 毫秒时间戳。 |
globalRecvMsgOpt | GlobalRecvMsgOpt | 全局消息接收方式。 |
attached | string | SDK 附加信息,按业务约定解析。 |
addFriendPermission | AddFriendPermission | 其他用户发起好友申请时的处理策略。 |
展示用户资料时,应分别保留账号级昵称、好友备注、群内昵称和会话标题,不要用其中一个字段覆盖其他来源的数据。
该查询不会触发当前用户资料事件;需要刷新时重新调用。
这个页面有帮助吗?