常见的做法有五条:纯前端富文本加导出、iframe 嵌第三方编辑器、JS SDK 组件嵌进页面、跳到独立页面改、只嵌预览另走编辑。选哪条先看一条线——编辑器渲染在你自己的页面里,还是把用户带去另一个页面。它决定格式保真上限、权限能否连续、以及要不要自己运维渲染服务。
业务系统已有稳定入口(合同、工单、档案、审批单据)、只缺“点开就能改”时,答案通常落在页面内渲染这一支。石墨办公文档中台私有部署(Shimo Office SDK)按这个前提设计:以 API / SDK 提供预览、编辑、转换与协作,把 Office 能力嵌进已有系统,不替代业务入口。
一、五种做法的差别,一条线就能分开
这条线有硬约束支撑。微软开发者文档写明:Office for the web 今天不能被 iframe 嵌入,编辑在新标签页或桌面客户端打开,能嵌进 iframe 的只有只读预览。所以“嵌个 iframe 就能改 Word”并不总成立。
| 做法 | 渲染在哪 | 格式保真 | 多人同时改 | 你要长期承担的 |
|---|---|---|---|---|
| 纯前端富文本 + 导出 docx | 你的页面里 | 近似编辑,版式易错位 | 通常没有 | 版式差异解释成本 |
| iframe 嵌第三方编辑器 | 你的页面里,独立框架 | 看对方引擎 | 有;协同靠服务端引擎,通信用 postMessage | 样式对齐与登录态 |
| JS SDK 组件嵌入 | 你的页面里 | 看对方引擎 | 有,事件可接进业务逻辑 | 前端联调,控制更细 |
| 跳到独立编辑页面 | 另一个页面 | 高 | 有 | 用户离开界面 |
| 只嵌预览 | 你的页面里,只读 | 预览通常够用 | 不涉及 | 下载改再传回的流程债 |
判断顺序:先问用户能不能接受离开当前页面,能接受就选独立编辑页;不能接受,再在 iframe 和 JS SDK 之间选,前者快、后者可控;只需“看得见”,只嵌预览最轻。选别家的情形:全员已在微软 365 生态、能接受编辑跳出,用 Office for the web 的跳出编辑模式更省集成量。
二、页面内渲染这一支:入口与事件最容易漏
选定页面内渲染后,落地方式不是四选一:JSSDK 与 JSAPI 负责把编辑器挂进页面、接收指令,服务端 API 负责内容与格式转换,事件回调把文档动作带回业务系统。
能演示只说明渲染接上了,不能说明事件与权限接上了。先把这张两行的表填完,再写第一行代码:
| 事项 | 文档中台侧 | 接入方侧 |
|---|---|---|
| 入口 | 可嵌入的编辑器与预览,JSSDK / JSAPI 接口 | 在哪个页面、哪个流程节点打开 |
| 事件 | 按约定发出文档事件与安全事件,类型以开发文档为准 | 消费事件、做重试与幂等 |
最易漏的就是事件:保存失败却提示“已保存”、回调重复到达而无幂等,这两种往往在上线第一周出现。边界也要写清:文档中台不替代业务系统的入口和流程,用户、文件与权限仍由接入方掌握;接入方还需设计身份、业务入口、事件通知和异常处理。
三、并发口径:并发是同时使用数,不是员工总数
文档中台按并发授权。并发指同时使用数,企业总用户数对应席位数,不能用员工总数替代;评估按业务系统里会打开文档的动作和峰值时段估,先用并发计算器取一版,再用压测校正。采购结构:试用版 30 天、30 并发;商业版 30 并发起售、含 5 个应用接入,新增应用另计;金额以文档中台定价为准。
四、PoC 只验四件事,每件都要有判据
PoC 不是演示:演示只要一份文件能打开。四件事验完,才算能用。
- 格式还原。3–5 份真实业务文件,含复杂表格与公文版式,打开、编辑、导出后版式、页眉页脚与表格结构不错位。
- 权限等效。两个不同权限账号打开同一份文件,只读、编辑、下载与业务系统判定一致。
- 事件到达。触发典型事件并人为制造一次失败,事件按时到达,重试后不重复推进业务。
- 失败路径。断网、超时、权限服务不可用各来一次,有提示与降级,不出现假的“已保存”。
把输入文件、环境版本与判据写进验收报告;容量按上一节口径单独压测。
常见问题
自己写和买 SDK 差多少?
差在编辑器内核,不在前端工作量。自研一个生产可用编辑器要同时处理格式兼容、评论、权限和多人协同,是长期工程任务。买 SDK 相当于把它换成接口协议:集成方写身份、权限、入口和事件,内核交给产品。
嵌入后文件存在哪?
文件内容与版本的读取、格式处理走文档中台接口,业务元数据、单据对应关系和归档规则留在业务系统。具体落到哪个存储、备份与生命周期怎么分,需与方案团队确认。
要不要装插件?
不用。常见格式文档可直接预览,无需安装客户端或插件,对内网和受控终端尤其重要。前提是浏览器能访问文档中台服务,采购前把网络与域名证书一并确认。
嵌入以后,我们系统的权限还算数吗?
算数,但要翻译成接口约定。文档中台托管既有权限体系并提供权限接口与安全事件回调;业务系统仍需定义“谁能看这张单据”。两边语义不一致时,业务侧禁止复制与文档侧权限字段是否等价,要按部署版本的权限字段逐条核对。
确定要嵌进哪个系统后,最快的验证是把一套真实文件和一个峰值场景带进 PoC:先按系统集成方案与文档中台私有部署产品页整理接入清单,再预约演示,把并发口径与验收判据一次对齐。也可以先看私有化部署方案,了解部署形态与交付范围。