浏览 平台 API
服务端 API

更新用户

复制

使用 更新用户 从可信后端调用 OpenIM REST 接口。请先在接入准备中配置 API 地址和管理员 Token;接口参数通过请求头和 JSON 请求体传递。


HTTP 请求

POST {API_ADDRESS}/user/update_user_info_ex

请求示例

curl --request POST "${API_ADDRESS}/user/update_user_info_ex" \
  --header "Content-Type: application/json; charset=utf-8" \
  --header "operationID: 1646445464564" \
  --header "token: ${ADMIN_TOKEN}" \
  --data-raw '{
  "userInfo": {
    "userID": "2",
    "nickname": "alantestuid3",
    "faceURL": "",
    "ex": "123",
    "globalRecvMsgOpt": 0
  }
}'
安全提示:管理员 Token 只能保存在可信后端服务中,不能下发到客户端或写入前端代码。客户端登录应使用服务端签发的用户 Token。

参数

此接口通过请求头传入链路追踪信息和鉴权凭证,通过 JSON 请求体传递业务参数。

请求头

请求头示例值是否必填类型说明
operationID1646445464564必填string用于全局链路追踪,建议使用时间戳,在每个请求中独立
tokeneyJhbxxxx3Xs必填string管理员 token

请求体

下表列出请求体支持的字段。

{
  "userInfo": {
    "userID": "2",
    "nickname": "alantestuid3",
    "faceURL": "",
    "ex": "123",
    "globalRecvMsgOpt": 0
  }
}
参数名是否必填类型说明
userInfo必填object用户资料更新对象。除 userID 外,只传需要更新的字段;未传字段不会被更新。
userInfo.userID必填string需要更新的 OpenIM 用户 ID。
userInfo.nickname选填string用户昵称。传空字符串时会更新为空。
userInfo.faceURL选填string用户头像 URL。传空字符串时会更新为空。
userInfo.ex选填string用户扩展字段。传空字符串时会更新为空。
userInfo.globalRecvMsgOpt选填int用户全局消息接收选项,参见用户模块的 GlobalRecvMsgOpt
userInfo.addFriendPermission 商业版选填int加好友权限,参见用户模块的 AddFriendPermission

响应

请求被 OpenIM 正常处理时通常返回 200 OK。业务是否成功以响应体中的 errCode 为准;errCode === 0 表示成功,非 0 表示业务错误。

{
  "errCode": 0,
  "errMsg": "",
  "errDlt": ""
}

错误

如果请求失败,OpenIM 返回错误对象。更多错误码说明见错误码

{
  "errCode": 1004,
  "errMsg": "RecordNotFoundError",
  "errDlt": ": [1004]RecordNotFoundError"
}
参数名类型说明
errCodeint错误码,具体查看全局错误码文档
errMsgstring错误简要信息
errDlterrDlt错误详细信息

常见错误场景

错误场景可能原因处理方式
鉴权失败token 缺失、过期,或不是可调用管理端接口的管理员 Token。重新获取 APP 管理员 Token,并只在可信后端保存。
链路追踪困难operationID 缺失或在大量请求中重复使用。为每次请求生成独立 operationID,并在服务端日志中保留。
参数校验失败请求体字段类型、必填字段或枚举值不符合接口要求。对照请求体参数表检查字段类型和必填项。