-1 | system error | 系统繁忙 | 多为瞬时抖动,稍后重试即可 |
0 | ok | 成功 | —— |
40001 | invalid credential | AppSecret 错误,或 access_token 失效 | ① 插件设置里 AppSecret 填错/需重新保存;② 同一 AppID 只维持一个有效 token,其它服务(别的插件、自建脚本、第三方平台、公众号后台调试工具)重新获取 token 会让插件缓存的 token 失效。避开互踢或减少其它服务的获取频次后重试 |
40002 | invalid grant_type | 凭证类型不合法 | 插件固定传 client_credential;出现多为反向代理改写/丢弃了查询参数,检查代理是否原样透传 |
40004 | invalid media type | 媒体类型不合法 | 同上:add_material 的 ?type=image 查询串被代理丢弃 |
40005 | invalid file type | 文件格式不受支持 | uploadimg 只收 jpg/png:webp 会被插件自动转码;站点里的 gif/bmp 正文图会原样上传,需先转为 jpg/png |
40006 | invalid media size | 素材文件大小超出限制 | 封面超过 10 MB,先压缩再同步 |
40007 | invalid media_id | 媒体 id 不合法 | ① 复用前校验(material/get_material)收到它 = 该素材确已在微信侧被删除(不是代理故障),插件据此重新上传封面;② 建草稿时收到它(draft/add)= 封面 thumb_media_id 无效/过期、属于其它公众号或是临时素材,插件会作废该封面的缓存记录、重新上传一张并重试一次(只重试一次),无需手动处理;③ 草稿校验 / 更新时收到它(draft/get / draft/update,仅开启「重复同步更新草稿」时)= 上次写入的那份草稿已不存在(或在公众号后台被删除),插件会改为新建草稿并记录新的 media_id,无需手动处理 |
40009 | invalid image size | 图片尺寸太大 | 正文图片超过 1 MB(webp 转 png 后体积可能变大),先压缩或改用更小的图 |
40013 | invalid appid | AppID 不合法 | 插件设置里的 AppID 填写有误 |
40014 / 42001 | invalid access_token / access_token expired | token 无效或已过期 | 偶发属正常,插件会自动重新获取;反复出现同 40001 的互踢排查 |
40033 | invalid charset(含 \uxxxx) | 请求字符不合法 | 草稿字段里含 Unicode 转义字符串;精简标题/作者/摘要后重试 |
45110 | author size out of limit | 作者字段超长 | 该码未收录在官方返回码表,只在调用中出现。虽然 draft/add 接口文档把 author 写作「不超过 16 个字」,但服务端实际按平台规则校验——作者名上限 8 个字(编辑器计字:汉字 1 字、半角 0.5 字、emoji 2 字),超过即返回本错误。插件已把「默认作者」与文章作者都截断到 8 字,一般不会触发;若在旧版本遇到,把作者名缩短到 8 字以内即可 |
40113 | unsupported file type | 不支持的文件类型 | 扩展名与实际字节不符(如把 webp 存成 .png)或图片损坏;插件已按文件魔数判定并转码,仍失败请检查原图能否正常打开 |
40125 | invalid appsecret | AppSecret 不合法 | 重新填写并保存 AppSecret |
40128 | invalid media id! must be uploaded by api | media_id 来源不对 | 同 40007:确保封面由本次同步上传的永久素材而来 |
40137 | invalid image format | 不支持的图片格式 | 同 40005:先转 jpg/png |
40164 | invalid ip, not in whitelist | 调用方 IP 不在白名单 | 把 Halo 服务器出口 IP(使用代理时则为代理服务器 IP)加入公众号「IP 白名单」,详见接口地址与反向代理 |
41004 | appsecret missing | 缺少 secret 参数 | 代理丢失了查询参数,检查 location 是否原样透传 |
41005 / 44001 | media data missing / empty media data | 缺少或为空的媒体数据 | 封面/图片下载后为空(多为图片地址失效或返回空响应),确认该图片可被 Halo 访问 |
44002 / 44003 / 44004 | empty post data / news data / content | 请求体或正文为空 | 文章正文为空;补充正文后重试 |
45001 | media size out of limit | 多媒体文件超过限制 | 封面超过 10 MB |
45002 | content size out of limit | 内容超过限制 | 正文超过 2 万字符 或 1 MB;超长文章需拆分 |
45003 | title size out of limit | 标题字段超过限制 | 标题超过 64 字;插件已按编辑器计字口径自动截断到 64 字,一般不会触发 |
45004 | description size out of limit | 描述字段超过限制 | 摘要超过 120 字;插件已按编辑器计字口径(半角 0.5 字)自动截断到 120 字,一般不会触发 |
45005 | url size out of limit | 链接字段超过限制 | 「原文链接」超过 1 KB,检查文章路由 |
45009 | reach max api daily quota limit | 当日接口调用额度用尽 | 当天同步/上传素材次数过多。可在公众平台「开发 - 接口权限」查看额度,或用 AppSecret 调用官方的「重置 API 调用次数」接口重置当日额度 |
45011 | api minute-quota reach limit | 分钟级频控 | 正文图片多且连续同步时容易触发;错开高峰、减少并发后重试 |
45034 / 45074 | media file count / list size out of limit | 素材数量触顶 | 每次同步都会新增一张封面永久素材,长期大量同步可能抵近 10 万上限;定期在公众号后台清理无用素材 |
45166 | invalid content | 正文内容不被微信接受 | 常见于正文里存在 <video> 且 src 非空(微信对图文中的视频数量有上限,第三方编辑器反馈为 3 个、后期群发场景为 10 个)、或插入了小程序卡片等不受支持的元素。插件已把编辑器插入的 <video> / <audio> 重建为「请点击文末『阅读原文』观看 / 收听」的提示卡片,正是为了规避该错误;若正文里仍残留视频标签(多为其他插件生成、本插件无法识别的内容),需移除后再同步。errmsg 只会给出 invalid content hint: [...] 而不指明具体元素,可凭其中的 rid 在微信开发者平台的 API 诊断工具里定位 |
46001 | media data no exist | 媒体数据不存在 | thumb_media_id 对应的素材已被删除,重新同步 |
47001 | data format error | 解析 JSON/XML 失败 | 反向代理返回了 HTML 错误页而非微信 JSON,见下方非 errcode 类失败 |
48001 | api unauthorized | 接口未授权 | 公众号未认证或未开通素材管理 / 草稿箱权限;个人订阅号常见 |
48004 | api forbidden for irregularities | 接口被封禁 | 登录 mp.weixin.qq.com 查看站内信与处罚详情 |
48015 | 该账号无留言功能权限 | 无留言功能 | 插件设置的「留言设置」选了「所有人可留言 / 已关注的人可留言」,但该号不具备留言功能;改为「关闭留言」 |
50002 | user limited | 用户受限(账号被冻结或注销) | 登录公众号后台确认账号状态 |