企业微信自建应用如何配置可信域名接收消息回调

文章导读
企业微信自建应用配置可信域名接收消息回调,需在管理后台「应用管理」中设置消息接收 URL,并完成域名所有权验证。适用场景为需要接收成员消息或事件推送的自建服务,风险边界在于回调地址必须公网可达且通过 HTTPS 校验。
📋 目录
  1. 快速处理思路
  2. 为什么会这样
  3. 分步处理
  4. 怎么验证是否生效
  5. 常见坑
  6. 常见问题
  7. 参考来源
A A

企业微信自建应用配置可信域名接收消息回调,需在管理后台「应用管理」中设置消息接收 URL,并完成域名所有权验证。适用场景为需要接收成员消息或事件推送的自建服务,风险边界在于回调地址必须公网可达且通过 HTTPS 校验。

先说结论:配置过程分为域名所有权验证和消息接收 URL 验证两步,必须确保服务器能正确响应企业微信的 GET 请求。

  • 适合:需要被动接收用户消息、菜单点击事件或状态变更推送的自建应用
  • 先准备:已备案的公网域名、HTTPS 证书、可编辑的应用服务器代码
  • 验收:管理后台显示「正常」状态,且能收到测试消息推送

快速处理思路

不需要复杂命令,重点在于后台配置与代码逻辑的匹配。

  1. 登录企业微信管理后台,进入应用详情页。
  2. 在「消息接收」栏目填写 URL、Token 和 EncodingAESKey。
  3. 服务器代码实现 GET 请求验证逻辑,原样返回 echostr。
  4. 保存配置,观察状态指示灯。

为什么会这样

企业微信需要确认回调 URL 确实由开发者控制,防止消息被恶意拦截。

企业微信自建应用如何配置可信域名接收消息回调

配置可信域名和验证 URL 是为了建立安全通道。企业微信服务器会向填写的 URL 发送 GET 请求,携带签名参数和加密的 echostr,开发者服务器解密后原样返回,证明拥有该域名的控制权且代码逻辑正确。

分步处理

按顺序完成域名验证和 URL 配置,任何一步失败都会导致接收不到消息。

1. 域名所有权验证

在管理后台「可信域名」设置中下载验证文件,上传至域名根目录,确保通过 HTTP 可访问该文件。

2. 填写接收配置

在应用详情页「消息接收」section,填写消息接收 URL(必须公网可达)、Token(自定义字符串)和 EncodingAESKey(可随机生成)。

企业微信自建应用如何配置可信域名接收消息回调

3. 实现验证逻辑

服务器监听该 URL 的 GET 请求,校验签名,解密 echostr 并返回明文。验证通过后,企业微信才会允许保存配置。

4. 保存并启用

点击保存,若验证通过,状态显示为「正常」。此时可开始接收 POST 格式的消息推送。

怎么验证是否生效

通过管理后台状态指示和实际消息测试确认。

企业微信自建应用如何配置可信域名接收消息回调
  • 查看应用详情页「消息接收」栏目的状态灯,绿色代表正常。
  • 在企业微信客户端向应用发送消息,检查服务器日志是否收到 POST 请求。
  • 检查返回日志,确认企业微信收到了 HTTP 200 响应。

常见坑

  • 端口限制:回调 URL 必须使用 80 或 443 标准端口,不支持非标准端口。
  • 超时问题:服务器必须在 5 秒内响应,否则企业微信会判定失败并重试。
  • 加密模式:若选择加密模式,必须正确处理 AES 解密,否则无法通过 URL 验证。
  • 域名一致性:消息接收 URL 的域名必须在「可信域名」列表中,否则无法保存。

常见问题

回调 URL 必须使用 HTTPS 吗?

建议强制使用 HTTPS,部分接口和安全策略要求回调地址必须加密传输,HTTP 可能被拦截或无法通过验证。

一个应用可以配置多个回调 URL 吗?

不可以,一个自建应用在同一时间只能生效一个消息接收 URL,修改后会立即覆盖旧配置。

验证失败提示「签名错误」怎么办?

检查 Token 是否填写一致,确认签名算法顺序(SHA1 排序参数)与官方文档完全一致。

参考来源

  • 企业微信官方文档 - 接收消息事件与格式:https://work.weixin.qq.com/api/doc/90000/90135/90930
  • 企业微信管理后台 - 应用管理界面