需管理员在企业微信后台创建自建应用并配置AgentId/Secret、可信IP白名单、Webhook端点,Dify侧须公开发布且开启API调用,最后通过调试验证消息双向贯通。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在企业微信管理后台创建自建应用
你需要先为企业内的Dify助手申请一个正式身份,这个身份必须由企业微信管理员账号操作,普通成员无法创建或修改应用权限。
用管理员账号扫码登录企业微信管理后台→顶部导航栏点击「应用管理」→右上角点「创建应用」→填写应用名称(如“Dify智能助理”)、应用介绍(建议写明用途,便于后续审批)→上传1024×1024像素的PNG图标→设置可见范围(至少勾选“全体成员”,否则Dify无法接收消息)→点击「创建」。
创建成功后立即进入应用详情页,在「应用信息」区域复制保存【AgentId】和【Secret】,这两个值后续配置AppFlow或自建服务时必须严格匹配,泄露或填错将导致鉴权失败且无明确报错提示。
获取并配置企业微信可信IP白名单
企业微信要求所有回调服务器IP必须预先登记,否则会直接拒绝POST请求,返回401错误且不透出具体原因。
如果你使用AppFlow部署:在AppFlow完成连接流配置后,它会自动生成一组出口IP地址,你需将这些IP完整粘贴进企业微信应用的「接收消息」→「IP白名单」字段中,每行一个IP,不能有空格或中文逗号。
如果你自建服务部署在云主机上:登录云厂商控制台查该ECS/VM的公网出口IP(不是绑定的弹性IP),并确认该IP未被其他业务复用——【同一IP不可混用于多个企业微信应用回调】,否则会出现消息丢失或签名验证失败。
配置Dify应用的Webhook接收端点
这一步决定Dify能否真正“听懂”企业微信发来的消息。企业微信发送的是XML格式事件,而Dify原生只接受JSON,必须做协议转换。
方法一:使用AppFlow自动桥接
在AppFlow创建连接流时,选择「企业微信→Dify」模板→配置好双方凭证后,系统自动生成一个Webhook URL(形如https://flow.aliyuncs.com/xxx)→回到企业微信应用详情页→「接收消息」→「启用接收消息」→将该URL填入「URL」字段→Token和EncodingAESKey直接从AppFlow配置页复制粘贴→点击「保存并启用」。
方法二:自建轻量转发服务(推荐测试阶段)
用Flask写一个5行代码的中转接口:接收企业微信POST的XML → 解析出Content字段 → 以JSON格式转发给Dify的/v1/chat-messages接口 → 将Dify返回的answer字段重新打包成企业微信要求的XML响应体 → 返回给企业微信。关键点在于必须校验msg_signature,否则企业微信会拒收。
在Dify中创建并发布可被调用的聊天助手
不是所有Dify应用都能被企业微信触发,必须满足两个硬性条件:公开发布 + 启用API调用。
登录Dify控制台→左侧菜单进入「应用」→点击「新建应用」→类型选「聊天助手」→填写名称与描述→在「模型配置」中选择已授权的LLM(如Qwen2.5-72B或GLM-4)→关键一步:在「发布」标签页勾选「公开发布」并点击「发布」→再进入「访问API」→开启「API调用」开关→点击「创建API密钥」→复制密钥值。
这个API密钥要填入AppFlow或你自建服务的请求头中:Authorization: Bearer <your_api_key>。如果跳过「公开发布」,企业微信发来的请求会被Dify直接拦截返回403,界面无提示,日志里只显示“unauthorized application”。
验证消息是否成功双向贯通
第一步:在企业微信中打开任意群聊或单聊 → 输入文字并发送(例如“你好”)→ 观察是否收到回复;
第二步:若无回复,立即检查企业微信管理后台「应用管理」→「应用详情」→「接收消息」页面右上角的「调试」按钮 → 点击后输入任意测试文本 → 查看下方返回状态码;
第三步:如果状态码是200但内容为空,说明Dify返回了空响应,此时需登录Dify后台 → 进入「监控」→「日志」→筛选最近10分钟的chat-messages请求 → 查看inputs.query是否为空字符串;
第四步:如果企业微信调试页显示401,99%是AppFlow里填的Secret与后台复制的Secret不一致,注意Secret末尾可能有隐藏换行符,务必用纯文本编辑器打开核对。



















