GeHub|微信 API 开发文档
官方网站后台系统企业微信
官方网站后台系统企业微信
  1. Webhook
Ctrl+K
  • 平台介绍
  • 快速开始 ⭐
  • Webhook
    • Webhook 事件 ⭐
    • 回调结构说明v1.0
    • 回调结构说明 v2.0
    • 调试指南⭐
    • 常见问题
  • API 参考
    • 登录模块
      • 获取登录二维码(步骤1)
      • 执行登录(步骤2)
      • 设置回调地址
      • 掉线重连
      • 弹框登录
      • AID 本地代理说明
    • 联系人模块
      • 获取通讯录列表
      • 获取通讯录列表缓存
      • 获取群/好友简要信息
      • 获取群/好友详细信息
      • 搜索好友
      • 添加联系人/同意添加好友
      • 删除好友
      • 设置好友仅聊天
      • 设置好友备注
      • 获取手机通讯录
      • 上传手机通讯录
      • 搜索企微
      • 添加企微好友
      • 同步企微好友
      • 获取企微好友详情
      • 检测好友关系
    • 群模块
      • 创建微信群
      • 修改群名称
      • 修改群备注
      • 修改我在群内的昵称
      • 邀请/添加 进群
      • 删除群成员
      • 退出群聊
      • 获取群信息
      • 获取群成员列表
      • 获取群成员详情
      • 获取群公告
      • 设置群公告
      • 同意进群
      • 添加群成员为好友
      • 获取群二维码
      • 群保存到通讯录
      • 管理员操作
      • 聊天置顶
      • 设置消息免打扰
      • 扫码进群
      • 确认进群申请
      • 解散群聊
    • 消息模块
      • 下载
        • 下载文件
        • 下载图片
        • 下载语音
        • 下载视频
        • 下载emoji
        • cdn下载
      • 发送文字消息
      • 发送文件消息
      • 发送图片消息
      • 发送语音消息
      • 发送视频消息
      • 发送链接消息
      • 发送名片消息
      • 发送emoji消息
      • 发送appmsg消息
      • 发送合并消息
      • 发送小程序消息
      • 发送定位
      • 转发文件
      • 转发图片
      • 转发视频
      • 转发链接
      • 转发小程序
      • 撤回消息
    • 朋友圈模块
      • 点赞/取消点赞
      • 删除朋友圈
      • 设置朋友圈可见范围
      • 是否允许陌生人查看朋友圈
      • 设置某条朋友圈为隐私/公开
      • 下载朋友圈视频
      • 发送文字朋友圈
      • 发送图片朋友圈
      • 发送视频朋友圈
      • 发送链接朋友圈
      • 上传朋友圈图片
      • 上传朋友圈视频
      • 转发朋友圈
      • 自己的朋友圈列表
      • 联系人的朋友圈列表
      • 某条朋友圈详情
      • 评论/删除评论
    • 标签模块
      • 添加标签
      • 删除标签
      • 标签列表
      • 修改好友标签
    • 个人模块
      • 获取个人资料
      • 获取自己的二维码
      • 获取设备记录
      • 隐私设置
      • 修改个人信息
      • 修改头像
    • 收藏夹模块
      • 同步收藏夹
      • 获取收藏夹内容
      • 删除收藏夹
    • 视频号模块
      • 关注
      • 评论
      • 浏览
      • 用户主页
      • 获取私信SessionId
      • 关注列表
      • 消息列表
      • 评论列表
      • 获取赞与收藏的视频列表
      • 搜索视频号
      • 创建视频号
      • 根据id点赞
      • 根据id点小红心
      • 获取我的视频号信息
      • 修改我的视频号信息
      • 发送视频号消息
      • 发送视频号朋友圈
      • 获取私信人信息
      • 发私信文本消息
      • 发私信图片消息
      • 扫码关注
      • 搜索并关注
      • 扫码浏览
      • 扫码评论
      • 扫码点赞
      • 扫码点小红心
      • 延迟点赞、小红心
      • 扫码登录视频号助手
      • 扫码获取视频详情
      • 我的视频号二维码
      • 上传CDN视频
      • 发布CDN视频
      • 发布视频-新
      • 同步私信消息
    • 账号管理
      • 账号密码登录
      • 检查是否在线
      • 退出
      • 设置代理
      • Mac转ipad接口
  • 账号与风控
    • 养号规范
    • 风险说明
    • 解封指南
  1. Webhook

回调结构说明 v2.0

当前版本:v2.0
当微信产生消息或系统事件时,服务端会通过 HTTP POST(JSON)方式,将数据推送至开发者配置的回调地址。
本章节用于说明:
回调消息结构
各类型消息判断方式
字段含义解析

一、回调消息常见问题#

Q. 微信在线为什么没有消息推送?#

当回调消息未能成功推送时:
1.
使用 Apifox 向回调地址发送测试请求;
2.
若测试失败:
检查服务是否运行
检查端口 / 防火墙 / 网关
检查公网地址
3.
若测试成功但微信无消息:
联系客服排查通道问题

Q. 如何判断是否是自己发送的消息?#

判断逻辑:
$.isSelf == true
说明:
相同:自己发送
不同:他人发送

Q. 为什么同一条消息会重复回调?#

原因:
服务重启
历史消息同步
失败重试机制
解决方案(必须实现):
去重Key = $.appid + $.newMsgId

二、消息结构总览#

所有消息统一结构:
   {
  "appid" : "wx_x**ZMP8Jp",
  "wxid" : "wxid**nquqz22",
  "content" : "你好",
  "createTime" : 17**411,
  "fromUser" : "wxid**nquqz22",
  "isSelf" : false,
  "msgId" : 1298811784,
  "msgType" : "TEXT",
  "newMsgId" : 9154**432038,
  "toUser" : "wxid**uz8h22"
}
字段说明:
字段含义
msgType消息类型
appid设备ID
wxid当前微信账号
content消息内容

三、通用字段说明(Data)#

字段含义
msgId消息ID(旧)
newMsgId消息唯一ID(推荐使用)
msgType消息类型
fromUser发送人
toUser接收人
content消息内容/XML
createTime时间戳

四、消息类型说明#


1. 文字消息#

判断:
$.msgType = TEXT

2. 图片消息#

判断:
$.msgType = IMAGE

3. 语音消息#

判断:
$.msgType = VOICE

4. 视频消息#

判断:
$.msgType = VIDEO

5. 表情消息#

判断:
$.msgType = EMOJI

6. 位置消息#

判断:
$.msgType = LOCATION

7. 名片消息#

判断:
$.msgType = CARD

8. 好友验证消息#

判断:
$.msgType = FRIEND_VERIFY

9. 好友确认消息#

判断:
$.msgType = FRIEND_CONFIRM

10. 文件消息#

判断:
$.msgType = FILE

11. 链接消息#

判断:
$.msgType = LINK

12. 小程序消息#

判断:
$.msgType = MINI_PROGRAM

13. 视频号消息#

判断:
$.msgType = FINDER_FEED

14. 引用消息#

判断:
$.msgType = QUOTE

15. 群公告消息#

判断:
$.msgType = ANNOUNCEMENT

16. 转账消息#

判断:
$.msgType = TRANSFER

17. 红包消息#

判断:
$.msgType = RED_PACKET

18. 群聊邀请消息#

判断:
$.msgType = GROUP_INVITE

19. 聊天记录消息#

判断:
$.msgType = CHAT_RECORD

20. 其他应用消息#

判断:
$.msgType = APP_MSG

21. 下载文件消息#

判断:
$.msgType = DOWNLOAD

22. 上传文件消息#

判断:
$.msgType = UPLOAD

23. 被移出群聊消息#

判断:
$.msgType = REMOVE_FROM_GROUP

24. 群解散消息#

判断:
$.msgType = GROUP_DISMISS

25. 修改群名称消息#

判断:
$.msgType = GROUP_NAME_CHANGE

26. 群待办消息#

判断:
$.msgType = GROUP_TODO

27. 撤回消息#

判断:
$.msgType = REVOKE_MSG

28. 拍一拍消息#

判断:
$.msgType = PAT_MSG

29. 其他系统消息#

判断:
$.msgType = SYSTEM

30. 重连成功消息#

判断:
$.msgType = RECONNECT_SUCCESS

31. 长链开启成功消息#

判断:
$.msgType = LONG_SUCCESS

32. 重连失败消息#

判断:
$.msgType = RECONNECT_FAIL

33. 长链开启失败消息#

判断:
$.msgType = LONG_FAIL

34. 登录异常消息#

判断:
$.msgType = LOGIN_ERROR

35. 退出微信消息#

判断:
$.msgType = LOGOUT

36. 登录成功消息#

判断:
$.msgType = LOGIN_SUCCESS

37. 长链开启通知消息#

判断:
$.msgType = Long_Serve_Start_Success

38. 长链关闭通知消息#

判断:
$.msgType = Long_Serve_Close

39. 未知类型消息#

判断:
$.msgType = UNKNOWN

✅ 总结(开发者必须掌握)#

1.
先判断 MsgType
2.
MsgType=49 再解析 XML
3.
所有消息必须去重
4.
XML 是核心(不要忽略)
5.
NewMsgId 才是唯一ID
修改于 8 天前
上一页
回调结构说明v1.0
下一页
调试指南⭐
Built with
本篇目录
一、回调消息常见问题
Q. 微信在线为什么没有消息推送?
Q. 如何判断是否是自己发送的消息?
Q. 为什么同一条消息会重复回调?
二、消息结构总览
三、通用字段说明(Data)
四、消息类型说明
1. 文字消息
2. 图片消息
3. 语音消息
4. 视频消息
5. 表情消息
6. 位置消息
7. 名片消息
8. 好友验证消息
9. 好友确认消息
10. 文件消息
11. 链接消息
12. 小程序消息
13. 视频号消息
14. 引用消息
15. 群公告消息
16. 转账消息
17. 红包消息
18. 群聊邀请消息
19. 聊天记录消息
20. 其他应用消息
21. 下载文件消息
22. 上传文件消息
23. 被移出群聊消息
24. 群解散消息
25. 修改群名称消息
26. 群待办消息
27. 撤回消息
28. 拍一拍消息
29. 其他系统消息
30. 重连成功消息
31. 长链开启成功消息
32. 重连失败消息
33. 长链开启失败消息
34. 登录异常消息
35. 退出微信消息
36. 登录成功消息
37. 长链开启通知消息
38. 长链关闭通知消息
39. 未知类型消息
✅ 总结(开发者必须掌握)