状态码/错误码

更新时间: 2024/11/13 18:25:04

本文介绍了网易云信 IM(即时通讯)服务的 Web 端状态码和错误码。

Web 端状态码

code 详细描述
Server_Not_Available 无法连接到 socket 服务器
Error_Internet_Disconnected 网断了
Error_Connection_is_not_Established 连接未建立
Error_Timeout 超时
Param_Error 参数错误
No_File_Selected 请选择文件
Wrong_File_Type 文件类型错误
File_Too_Large 文件过大
Cross_Origin_Iframe 不能获取跨域 Iframe 的内容
Error_Unknown 未知错误

状态码详解

用户名或密码错误 302

当客户端 SDK 执行登录后,回调状态码 302 时,请检查当前的 AppKey、account id 与 token 三者是否一一对应。较常见的原因如:token 不正确或不是最新、该 AppKey 下无此 account id 等。
详情参考 关于 IM 登录失败-返回 302

非法操作或没有权限 403

当执行非法操作时,会返回状态码 403。常见的非法操作如下:

  • 如果网易云信控制台配置非好友不允许发消息,客户端 SDK 向非好友发消息会返回 403。
  • 聊天室业务中,要将管理员变成普通用户,直接取消其管理员权限即可。不能直接将管理员设置为 普通成员,否则可能会返回 403。 聊天室业务中,只有创建者可以对管理员进行操作,管理员不能对创建者和其他管理员进行操作,否则可能会返回 403。
  • 第三方回调业务中,如果第三方回调功能不放行某条消息,则发送方 SDK 会回调返回 403。
    被好友拉黑后,给对方发消息,也会先进行第三方回调。如果不放行,SDK 会返回 403。如果放行,SDK 会返回 7101。
  • 如果账号已经退群或者被踢出群,尝试群消息撤回时,会返回 403。但是在撤回时长范围内,管理员仍然可以通过客户端撤回其他已被踢出的普通的群成员发送过的消息。
  • 当前 AppKey 对应的网易云信应用已关停时,调用 IM 服务端 API 会返回{"desc": "app is forbidden", "code": 403}。
  • 当调用 IM 服务端 API,且传入的昵称、签名等信息命中了反垃圾(例如:涉政、违禁、广告等),会返回{"desc": "forbbiden info", "code": 403}。
  • 互动白板业务中的文档转码上传功能里,文档相关信息只能由上传者自己查询,其他账号查询会返回 403。
  • IM 服务端 API 群组相关接口只适用于高级群与超大群。
  • 若双方无好友关系,则调用更新好友相关信息的接口将会返回 403。

在未开通/启用某项功能前,调用相应的接口也会返回状态码 403。常见的情况如下:

  • 未开通事件订阅(常用于在线事件订阅)的情况下,使用相关功能,会返回 403。
  • 当前应用无收发 IM 消息的权限(在 网易云信控制台 会有相应提示),当调用发消息的接口时,会返回 403。
  • 删除漫游消息时,如果应用下没有开启消息漫游功能,调用相关接口会返回 403。

对象不存在 404

当调用接口回调出 404 状态码后,请检查传参是否正确,常见的情况如:

  • 必传参数为空时,可能会回调 404。
  • 传入的参数实际不存在。如传入实际上未注册过的 account id,不存在的群 ID 等。

客户端请求超时 408

当调用接口回调出 408 状态码后,请检查当前所处的网络是否正常。常见的情况如:

  • 网络连接断开后,调用联网请求接口,此时会回调 408。
  • 在未成功登录的情况下,调用联网请求接口。
  • Android SDK 4.3.0 及之前的版本,没有对于 Android 8.0 以上系统版本的适配,登录时可能出现 408,请更新到最新版本 SDK。

参数错误 414

当调用接口回调出 414 状态码后,请检查传参是否正确。常见的情况如:

  • 传参的数据类型与接口要求不一致。
  • 如果在 控制台 > 应用 > App Key 管理 > 标识管理,选中了 进行标识安全验证:当请求登录的客户端 App 标识不在以上列表中时,登录请求将被拒绝,当客户端 App 标识(iOS Bundle Identifier / Android Package Name)不在配置的列表中,登录接口会返回 414。
  • 当调用服务端接口,并传入未注册过的 account id 时,也会回调 414。
  • 聊天室业务中,如果聊天室被关闭,查询聊天室消息历史会返回 414。例如:调用 IM 服务端 API「聊天室云端历史消息查询」会返回{"desc": "check roomid", "code": 414}。
  • 如果消息被反垃圾命中,尝试撤回时,会返回错误码 414。
  • 不能添加自己为好友,否则返回 414。
  • 调用短信相关接口时,若开发者传入的参数不符合 JSON 格式 会返回{"code": 414, "msg": "'mobiles' / 'params' should be json format"},请更正。
  • Web SDK 中,群已读回执功能里,参数 teamMsgReceipts 为数组格式,数组元素上限数 50,超过会返回 414。
  • 调用 IM 服务端 API 时返回{"desc":"bad http headers", "code":414},可能是校验信息错误。关于校验信息,请 点此查看
    [注意] 计算 CheckSum 时使用的是 AppSecret 而不是 AppKey。
  • 返回{"desc": "CurTime is illegal", "code": 414}/{"desc": "CurTime is expired", "code": 414},表示传入的 CurTime 参数与当前 UTC 时间戳不一致(超前或滞后)。可能原因是:
    • 开发者没有实时动态获取当前 UTC 时间戳。
    • 应用服务器配置的时区和时间与实际不一致。
  • 返回{"desc":"body not json", "code":414}。IM 服务端接口请求 Content-Type 为 application/x-www-form-urlencoded,请对参数值进行 urlencode,避免特殊字符造成解析失败。
  • 返回{"desc":"retry again", "code":414}。调用 [创建网易云信 IM 账号](/docs/TM5MzM5Njk/Dc2NTM1NzI?#创建网易云信 IM 账号) 并发创建账号时,不同的请求传入相同的 account id 参数可能返回此错误。
  • 如果群主账号被封禁后,再调用服务端 API 解散群,会返回{"desc": "check accid001", "code": 414}。
  • 聊天室相关 API 返回{"desc":"parameter roomid should be long","code":414},可能原因包括但不限于:
    • 开发者对 roomid 参数的值进行了误编码,例如 PHP 中对其进行 json_encode 可能导致出现此报错。
  • 对于 更新聊天室信息,如果只传入 roomid、needNotify 和 notifyExt,而没有传入其它任何需要更新的参数,则会返回{"desc": "no valid param provided, skip update!", "code": 414}。
  • 调用 [创建网易云信 IM 账号](/docs/TM5MzM5Njk/Dc2NTM1NzI?#创建网易云信 IM 账号) 时,返回{"desc": "Exceed the maximum account XXX", "code":414}。可能原因有:
    • IM 免费版账号数上限数为 100 个。
    • IM 试用到期。IM 试用期间账号数无上限,试用到期后上限数降为 100 个。若需继续使用 IM,请在 网易云信控制台 开通套餐包。

重复操作 417

  • 客户端自动登录时,回调 417。可能原因参考 自动登录返回 417
  • 创建多人音视频房间,回调 417.可能原因参考 关于多人音视频/互动直播房间的注意事项
  • IM 服务端 API 设置聊天室内用户角色 返回{desc:"duplicate...", code:"417"},可能原因包括但不限于:
    • 重复操作,例如已经设置某角色之后再次设置,或者已经取消某角色之后再次取消。
    • 设置不当,例如对非管理员角色取消管理员,或者对非聊天室成员进行操作等。

没有权限 802

  • 调用 IM SDK 主动退群接口,返回 802。高级群的群主不能直接退群,可以先转让群再退群,或者直接解散群。
  • 调用 将群组整体禁言接口设置或解除群组禁言时,如果 muteType 传入 3,表示禁言整个群(包括群主)。这种情况下如果 SDK/客户端若再尝试调用禁言接口,会返回 802。
此文档是否对你有帮助?
有帮助
去反馈
  • Web 端状态码
  • 状态码详解
  • 用户名或密码错误 302
  • 非法操作或没有权限 403
  • 对象不存在 404
  • 客户端请求超时 408
  • 参数错误 414
  • 重复操作 417
  • 没有权限 802