基于企业微信API的微应用前端与后端架构设计

1. 引言

微应用前端负责给员工点:查订单、提审批、看客户。后端负责鉴权、任务、出站。把发送写进按钮点击函数里,页面一卡、人连点,就是多条通知。架构要把「界面操作」和「投递」切开。

2. 三层不要焊死

text 复制代码
前端(工作台 / 管理页)
  → 后端业务 API(鉴权、校验、写任务)
    → 发送进程(号在线才出站)
      → 员工会话
回调入口 → 入队 → 业务消费 → 回写工作台

前端不持有发送凭证。凭证在发送进程。员工在前端看到的「已发送」,以任务状态为准,不要以按钮返回为准。

QiWe API 放在发送进程和回调入口,不要嵌进浏览器。

3. 前端

工作台可以是你们自己的管理端,不必先上官方 JS-SDK。需要的是:当前员工、当前客户绑定、任务列表、失败原因(存活 / 对象 / 投递)。不要在前端拼会话 ID 当隐藏域长期保存后还拿去发。

后端怎么调发送,以 API文档 为准。

4. 后端

python 复制代码
def create_notify(user, customer_no, text, db):
    bind = db.get_bind(user.device, customer_no)
    if not bind:
        return {"ok": False, "reason": "unbound"}
    key = f"ui:{user.id}:{customer_no}:{hash(text)}"
    if db.try_insert(key):
        db.enqueue(user.device, bind["peer"], text)
    return {"ok": True}

出站交给 QiWe API。回调入口只入队。前端轮询任务状态,不轮询聊天窗口。

测试和生产不能共用任务表。前端环境标识必须传到任务行上。

频率、回调和附件分模块做,不要挤进页面按钮。

5. 验收

连点三次按钮只有一条出站;关闭页面后任务仍会发;号掉线时前端看到的是存活失败,不是「接口 500 自己猜」。

6. 总结

微应用架构的合格线:前端无凭证、后端有任务、发送有进程、回调有队列。企业微信API是出站层,不是页面组件。

相关推荐
daisychey2 分钟前
用 Playwright 做多平台内容分发,我踩过的 8 个坑
前端
IT_陈寒1 小时前
为什么你应该学习JavaScript?
前端·人工智能·后端
大龄秃头程序员1 小时前
iOS冷启动监控Demo
前端
光影少年1 小时前
为什么 JavaScript 中 0.1 + 0.2 !== 0.3,如何让其相等?
前端·javascript·算法
掘金酱2 小时前
[稀土掘金 × 火山引擎] AI用量周榜冲刺赛|获奖名单公示
前端·人工智能·后端
泡泡oO2 小时前
“如果你还在用Superpowers,那我不要和你说话”
前端·后端·全栈
维克兜率天2 小时前
趋势过滤:避免被“假突破“反复打脸
前端
8年区块链老兵3 小时前
一篇文章教会你:用区块高度读懂比特币链上的每一笔交易
前端
xixichensh3 小时前
前端转做AI程序员第一步——开发一个AI流式对话Demo
前端
小羊没烦恼!3 小时前
系统内部模块(子系统)之间的耦合以及模块(子系统)划分
java·开发语言·前端·数据库·算法·c#