getUsersInfo
功能介绍
说明
获取指定用户的个人信息,该接口用于非好友之间的公开信息获取,如昵称、头像等。
- iOS
 - Android
 - Flutter
 - uni-app
 - Browser/Electron/MiniProgram
 - React-Native
 - Unity
 
函数原型
Future<List<PublicUserInfo>> getUsersInfo({
    required List<String> userIDList,
    String? operationID,
  })
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| userIDList | List< String> | 是 | 用户 ID 列表 | 
| groupID | String | 否 | 群组 ID | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| then | List< PublicUserInfo > | 调用成功回调 | 
| onError | Function | 调用失败回调 | 
代码示例
await OpenIM.iMManager.userManager.getUsersInfo(userIDList: []);
// todo
函数原型
- (void)getUsersInfo:(NSArray<NSString *> *)userIDs
                   onSuccess:(nullable OIMPublicUsersInfoCallback)onSuccess
                   onFailure:(nullable OIMFailureCallback)onFailure;
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| userIDs | NSArray<NSString *> | 是 | 用户 ID 列表 | 
| groupID | NSString | 否 | 群组 ID | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| onSuccess | OIMPublicUserInfo | 成功返回 | 
| onFailure | OIMFailureCallback | 失败返回 | 
代码示例
[OIMManager.manager getUsersInfo:@[]
                                 groupID:@""
                               onSuccess:^(NSArray<OIMPublicUserInfo *> * _Nullable usersInfo) {
} onFailure:^(NSInteger code, NSString * _Nullable msg) {
}];
函数原型
public void getUsersInfo(OnBase<List<PublicUserInfo>> callBack, List<String> uidList)
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| callBack | OnBase<List<PublicUserInfo>> | 是 | 回调接口 | 
| uidList | List<String> | 是 | 用户 ID 集合 | 
返回结果
代码示例
OpenIMClient.getInstance().userInfoManager.getUsersInfo(new OnBase<List<PublicUserInfo>>() {
    @Override
    public void onError(int code, String error) {
      // todo: 处理错误信息
    }
    @Override
    public void onSuccess(List<PublicUserInfo> data) {
      // todo: 请求成功,返回PublicUser
    }
},uidList);
函数原型
IMSDK.getUsersInfo(userIDList: string[], operationID?: string): Promise<WsResponse<PublicUserItem[]>>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| userIDList | string[] | 是 | 用户 userID 列表 | 
| operationID | string | 否 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<WsResponse<PublicUserItem[]>> | 查询到的用户信息列表 | 
| Promise.catch() | Promise<WsResponse> | 调用失败回调 | 
代码示例
import { getSDK } from '@openim/wasm-client-sdk';
const IMSDK = getSDK();
// use in electron with ffi
// import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
// const { instance: IMSDK } = getWithRenderProcess();
// use in mini program
// import { getSDK } from '@openim/client-sdk';
// const IMSDK = getSDK();
const userIDList = ['userID1', 'userID2'];
IMSDK.getUsersInfo(userIDList)
  .then(({ data }) => {
    // data: 查询到的用户信息列表
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
函数原型
IMSDK.asyncApi('getUsersInfo', operationID: string, userIDList: string[]): Promise<PublicUserItem[]>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| userIDList | string[] | 是 | 用户 userID 列表 | 
| operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
通过
openim-uniapp-polyfill包将函数 Promise 化,调用时需要使用then和catch判断并处理成功和失败回调。
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<PublicUserItem[]> | 查询到的用户信息列表 | 
| Promise.catch() | Promise<CatchResponse> | 调用失败回调 | 
代码示例
import IMSDK from 'openim-uniapp-polyfill';
const userIDList = ['userID1', 'userID2'];
IMSDK.asyncApi('getUsersInfo', IMSDK.uuid(), userIDList)
  .then((data) => {
    // data: 查询到的用户信息列表
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
函数原型
OpenIMSDKRN.getUsersInfo(userIDList: string[], operationID: string): Promise<PublicUserItem[]>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| userIDList | string[] | 是 | 用户 userID 列表 | 
| operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<PublicUserItem[]> | 查询到的用户信息列表 | 
| Promise.catch() | Promise<CatchResponse> | 调用失败回调 | 
代码示例
import OpenIMSDKRN from "open-im-sdk-rn";
const userIDList = ['userID1', 'userID2'];
OpenIMSDKRN.getUsersInfo(userIDList, 'operationID')
  .then((data) => {
    // data: 查询到的用户信息列表
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
函数原型
public static void GetUsersInfo(OnBase<List<PublicUserInfo>> cb, string[] userIds, string groupId)
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| cb | OnBase<List<PublicUserInfo>> | 是 | 回调 | 
| userIds | string[] | 是 | 用户 ID 集合 | 
| groupId | String | false | 群ID | 
返回结果
代码示例
IMSDK.GetUsersInfo((list,errCode,errMsg)=>{
    if(list!= null){
    }else{
    }
}, userIds, groupId);