一、前期准备
-
注册企业微信
- 访问企业微信官网注册企业账号(需营业执照)。
- 完成企业认证(认证费用为300元/年)。
-
创建应用
- 登录企业微信管理后台(https://work.weixin.qq.com/)。
- 进入「应用管理」→「自建应用」→「创建应用」。
- 填写应用名称、描述,上传Logo,选择可见范围(部门或成员)。
-
获取关键信息
- CorpID:企业唯一标识(管理后台→「我的企业」→「企业信息」)。
- AgentID:应用唯一标识(应用详情页可见)。
- Secret:应用密钥(应用详情页→「Secret」需妥善保管)。
二、开发环境配置
-
选择技术栈
支持任意后端语言(如Python/Java/Node.js)。示例以Python Flask框架演示:
pythonpip install flask requests -
配置回调模式(可选但推荐)
- 用于接收用户消息或事件通知。
- 需准备接收URL (公网可访问的HTTPS接口)和Token 、EncodingAESKey(在应用详情页配置)。
三、核心功能开发
1. 获取Access Token
- 调用API:
https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET - 示例代码:
python
import requests
def get_access_token(corpid, secret):
url = f"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corpid}&corpsecret={secret}"
response = requests.get(url).json()
return response["access_token"] # 有效期7200秒,需缓存复用
2. 消息推送
-
主动发送消息 (如文本、图文):
pythondef send_text_message(access_token, agentid, userid, content): url = f"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={access_token}" data = { "touser": userid, # 成员ID,多个用"|"分隔 "msgtype": "text", "agentid": agentid, "text": {"content": content} } return requests.post(url, json=data).json() -
接收用户消息 (需配置回调):
pythonfrom flask import request @app.route("/callback", methods=["POST"]) def handle_callback(): # 解析XML数据(需解密若启用AES) msg_type = request.xml.find("MsgType").text if msg_type == "text": content = request.xml.find("Content").text # 业务逻辑处理...
3. 用户身份验证
- 通过OAuth2.0获取用户信息:
python
def get_user_info(code, access_token):
url = f"https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token={access_token}&code={code}"
return requests.get(url).json() # 返回{"UserId":"zhangsan"}
四、部署与测试
-
服务端部署
- 使用云服务器(如阿里云、腾讯云)部署应用,绑定域名并配置HTTPS证书(Let's Encrypt免费证书)。
- 开放回调URL的端口(通常443)。
-
测试模式
- 在企业微信管理后台将应用设置为「调试模式」,仅指定成员可见。
- 使用企业微信客户端扫描「应用详情页」的二维码安装测试。
五、上线与运维
-
正式发布
- 关闭调试模式,调整可见范围为全员或目标部门。
- 提交企业微信审核(通常1-3个工作日)。
-
运维监控
- 日志记录:存储API调用日志及用户操作记录。
- 异常告警:监控Access Token失效、消息发送失败等。
六、注意事项
-
API调用频率限制
- Access Token:每日上限2000次,需缓存避免频繁请求。
- 主动消息:应用上限每分钟6000次,单个用户每分钟不超过20条。
-
安全规范
- Secret需加密存储,禁止前端暴露。
- 回调URL需验证签名(防止伪造请求)。
-
版本兼容
- 关注企业微信API更新公告,及时适配接口变更。
通过以上步骤,您可完成从零搭建企业微信应用的全流程。建议结合官方文档进行细节补充。