已收录

金山文档和 WPS WebOffice 到底怎么选?一套引擎,两种交付

金山文档和 WPS WebOffice 同属金山办公的产品体系,本文只讨论两者的定位差异与适用场景,不做优劣评价。

一、这个问题的来源

过去半年我被问得最多的一句话是:

"你们不是已经有金山文档了吗?我直接调金山文档的接口不就行了?"

这个问题问得合理——两边的在线编辑器,技术形态几乎是同一套:服务端回调拿文件、前端 JSSDK 挂 iframe。所以只看接入文档,很容易觉得"这不就是一回事吗"。

但这两者解决的问题不一样。先把结论摆出来:

  • 金山文档是一个产品:有自己的账号、自己的存储、自己的界面、自己的目录和分享体系,用户是"来用文档的人"。

  • WPS WebOffice是一套能力:提供的是文档的预览与编辑,文件、账号、界面、权限都在接入方那边,用户是"在别人的系统里看文档的人"。

再换一个更好记的说法:

金山文档是"文档的家",WebOffice 是"文档的引擎"。
家要有人住,引擎只需要被装进去。

下面逐条拆,最后给选型判断。


二、一张表先看清

维度

金山文档(开放平台 developer.kdocs.cn)

WPS WebOffice(solution.wps.cn)

产品定位

在线协作文档 SaaS,提供文档创建、协作、分享、收集的完整产品能力

官方定义:"在线文档预览编辑服务,可为接入方提供专业的文档处理能力"

交付对象

使用文档的人,以及要"长出文档功能"的应用

要把文档能力嵌进自己系统的研发团队

文件存哪

金山云(个人"我的文档" / 组织"应用文档")

接入方自己的存储,服务端通过回调把下载地址给 WPS

账号体系

金山文档账号,OAuth 2.0 授权登录

接入方自有账号,回调里传用户信息

界面归属

金山文档的界面与品牌

接入方系统界面,工具栏与入口可配置

能力边界

文档全生命周期:新建、目录、版本、分享、回收站、表单、多维表、AirScript

聚焦已有文件的处理:预览、编辑、批注、修订、格式转换、权限、水印

终端

网页、App、小程序

PC + 移动端,兼容主流浏览器与微信小程序

私有化

官方未见私有化说明(未核实)

公网以 API 版交付;私有化走 WPS 文档中台,两者能力同源、交付形态有重叠(见 3.7)

表格里最容易被忽略的是第 3 行和第 4 行——它俩决定了 80% 的选型结果,比"支持多少种格式"重要得多。


三、逐条拆开看

3.1 文件最终存在谁那儿

这是第一个分水岭。

金山文档开放平台把文档分成两类:

  • 个人文档:挂在"我的文档"下,属于某个金山文档账号;

  • 应用文档(appspace):所有权属于组织,官方明确说明"用户登录个人金山文档账号也无法在文档列表中看到"。

注意后半句——它说明的是可见性隔离,不是存储位置迁移。文件仍然在金山的云上。对多数 SaaS、教育、协作类产品来说这是合适的选择:存储、备份、版本、回收站这些基础能力由平台承载,接入方不需要自建。

如果立项条件里已经写明"文件必须留在我的对象存储里"或者"文档内容不能出我的 VPC",那么在评估阶段就应该转向文件留在接入方侧的方案,比如 WebOffice。

WebOffice 对应的设计是反过来的:接入方需要实现服务端回调,把文件元信息、下载地址、用户信息、权限、保存动作都交回给接入方。官方对这件事的表述是"账号、文件管理、文件存储可自行管控,无需迁移和账号对接"。

对接入方的要求也很明确:需要有一个自己的文件服务。文件、版本、权限、保存链路,这些都在接入方这一侧。

3.2 用户要不要多一个账号

金山文档开放平台走的是 OAuth 2.0:用户拿金山文档账号授权登录你的应用。这是标准的授权流程;如果目标系统本身已经有一套账号体系,就需要额外评估"员工是否接受再注册一个账号"这件事。

WebOffice 不走这条路径,因为它没有自己的用户体系——回调里告诉它"这次请求是谁、有什么权限",它按这个渲染。终端用户不需要额外的金山账号(界面品牌也可以通过配置控制)。

在政企、金融这类对账号来源和登录链路有明确要求的项目里,"是否引入外部账号"通常会被单独列为评估项,这一点值得在方案阶段就确认清楚。

3.3 能力边界:文档产品 vs 文档引擎

金山文档开放平台的接口覆盖面很宽:文档 CRUD、分享、回收站、应用文档版本历史、WPS 表格、在线表格(ksheet,beta)、轻维表(dbt,支持 Webhook)、AirScript、以及表单相关接口(目前标注为 alpha),应用形态还分网页应用和小程序。

翻译一下:它的设计前提是接入方要的是一套"文档产品",所以把文档周边能力一并提供了。

WebOffice 给的是另一套东西:1000+ 文档 Web SDK 接口、30+ 常规配置项、编辑/预览/批注/修订/水印、格式转换,以及官方"文档用户权限"里的 9 个权限位:read / update / download / copy / print / comment / history / rename / saveas(其中 history 控制的是历史版本入口是否可见,不是编辑权,别望文生义)。

翻译一下:它的设计前提是接入方已有自己的文件与产品体系,只缺文档处理这一环,产品侧的逻辑(目录树、搜索、分享链接、权限管理界面、回收站)由接入方自己实现。

所以如果目标本身就是"做一套在线协作文档平台",基于金山文档开放平台会更省工作量;WebOffice 的位置是嵌入已有业务系统的文档环节,两者解决的是不同层次的问题。

3.4 格式和终端

WebOffice 官方格式清单中,代表性的几类如下:

  • 文字:doc / dot / wps / docx / dotx / docm / rtf / txt / uof

  • 表格:xls / xlt / et / xlsx / xltx / csv / xlsm / ett

  • 演示:ppt / pptx / pptm / ppsx / potx / dps / dpt

  • 版式:pdf / ofd

金山文档这边覆盖的是主流办公格式(Word / Excel / PPT / PDF),再叠加它自有的文档形态(智能文档、在线表格、轻维表)。两边的格式能力都建议以官方文档的最新说明为准。

有个细节值得注意:WebOffice 编辑态支持的格式比预览态少(比如 rtf、txt、xml 只支持预览)。做过文档系统的都知道这很正常——预览可以走转换渲染,编辑必须真解析。选型时如果客户的核心文件是冷门格式,一定要拿真实文件跑一遍,别只看清单。

终端方面官方口径是"支持 PC 和移动端,兼容主流浏览器及微信小程序等平台"。这一条对做移动办公、企业微信/钉钉内嵌的场景很关键。

3.5 接入形态:长得像,但不是一回事

两边的接入流程可以并排看:

WebOffice(三步)

  1. 控制台创建应用,拿 AppID / AppSecret;

  1. 服务端实现回调:文件元信息、下载地址、用户信息、权限、保存;

  1. 前端引入 JSSDK,初始化后挂到 iframe 上。

金山文档开放平台

  1. 申请应用(网页应用 / 小程序),走 OAuth 2.0 拿用户授权;

  1. 调 REST 接口创建 / 上传 / 管理文档(个人文档或应用文档);

  1. 服务端取编辑预览 URL,前端 JSSDK + iframe 渲染;App / 小程序用自带 WebView。

第 3 步几乎一模一样。差别全在第 1、2 步——一个是在跟"自己的文件服务"对接,一个是在跟"金山的文档空间"对接。

这也是为什么很多团队评估时觉得"两边差不多":他们只看了第 3 步。

四、选型:问自己五个问题

不用背表格,按顺序回答这五个问题,答案会自己出来。

Q1:文档最终存在哪里?

  • 必须存在我方存储 / 客户内网 → WebOffice

  • 存金山云没问题 → 继续问

Q2:终端用户能不能多一个金山账号?

  • 不能,或者会引发合规问题 → WebOffice

  • 可以,甚至是优点(跨端同步、分享方便)→ 继续问

Q3:你需要的是"编辑器"还是"文档产品"?

  • 只要一个能看能改的界面,目录/分享/回收站我自己有 → WebOffice

  • 我需要文档能新建、能组织、能分享、能收集 → 金山文档

Q4:界面品牌归谁?

  • 界面要完全长在我的系统里,不希望出现第三方品牌 → WebOffice

  • 不介意,甚至希望用户知道文档来自金山文档 → 金山文档

Q5:要私有化部署 / 信创吗?

  • 要 → 这条线要单独谈 WPS 文档中台。

五个问题里,只要 Q1 或 Q2 有一个指向 WebOffice,后面的就不用问了——那是硬约束。


五、三种常见的场景错配

5.1 用文档产品去满足"文档能力"的需求

这类项目功能上通常能跑通,但方案里需要把两件事说明白:账号(终端用户通过金山文档账号授权登录)和数据(文件存放在金山云)。

判断信号:需求里出现"数据不出域""不能用第三方登录""文件要归档到我们的存储"——出现任意一条,就属于 WebOffice 更直接覆盖的范围。

5.2 用文档能力去满足"文档产品"的需求

技术上完全可行,工作量主要落在产品周边:文件列表、目录树、全文搜索、分享链接与有效期、回收站、权限管理界面、协作邀请等,都需要接入方自行实现。而这些能力在金山文档里是产品自带的。

判断信号:需求里出现"员工可以自己新建文档""要能分享给外部人看"——这已经是产品级需求,选金山文档会更直接。

5.3 接入前没确认回调网关的可达性

WebOffice 的回调网关需要公网可达。这在公有云部署里不是问题;如果客户系统部署在纯内网,或安全策略只允许出方向流量,就需要在接入设计阶段把这个条件确认下来,避免联调时才发现链路不通。

顺带一句:「文档不落地」出自 WPS 365 文档中心 / 文档中台的官方口径,solution.wps.cn 的开发文档里没有这个术语;官方博客在讲中台案例时也出现过"接入 WebOffice 开放能力"的写法。写方案时最好把"哪种部署形态、文件落在谁那儿"说清楚,避免用词混用造成理解偏差。


六、我的结论

如果只用一句话:

要给系统"加一个文档查看/编辑窗口",选 WebOffice;要给用户"一套能协作的文档",选金山文档。

再补两句更实用的:

  1. 别用"能不能 iframe 嵌入"来做判断。两边都能嵌,这是最没有区分度的一个指标。

  1. 判断标准是数据归属和账号归属。这两个定了,剩下的都是细节。

同一套排版与协同引擎,一种交付形态是完整产品,交给使用者直接用;另一种是能力接口,交给系统去集成。两者各覆盖一段需求,先确认自己站在哪一段,比对着功能清单逐条打勾有用得多。


七、参考出处

广东省
浏览 249
收藏
点赞
分享
+1
+1
全部评论