# 金山中台适配OfficeSDK技术说明文档

# 背景&需求

本文讲解V9.0SP1+版本,金山中台集成适配致远OfficeSDK的实现思路,以方便有金山中台二次开发需求的技术做参考。

# 依赖版本

V9.0SP1及未来版本

# 技术说明

# 标准适配代码位置

PC端集成代码位于:\apps-office-plugins-front\desktop-front\src\office\js\kingSoftAdapter目录下

kingsoftPreviewAdapter.js和kingSoftPreview.js是金山在线预览的适配源码

kingSoftAdapter.js和kingSoftWebOffice.js是金山在线编辑的适配源码

移动端H5集成代码位于:\apps-office-plugins-front\mplus-front\src\webOffice\kingsoft目录下

kingSoftAdapter.js是金山在线编辑移动端的适配源码

kingsoftPreviewAdapter.js是金山在线预览移动端的适配源码

# 二次适配思路

针对标准适配代码,修改里面的实现,以完成定制的诉求。

apps-office-plugins-front工程下允许使用ES6语法,基于Ctp-Studio编译部署。如果没有Ctp-studio平台,纯粹个人开发,则需要做ES6转ES5的转换,否则无法使用。

如果是新页面需要引入OfficeSDK代码,则按[流版签(OfficeSDK)技术说明文档] (opens new window),引入officeSDK.js即可。不用引入kingSoftAdapter.js这类适配器的代码,具体使用什么适配器是officeSDK.js中根据后台配置动态装载。

// 在需要使用的html页面引入officeSDK.js
<script type="text/javascript" src="/seeyon/common/office/js/officeSDK.js"></script>

# 测试注意事项

特别说明:9.0SP1及以后版本,金山与OA对接的相关配置,已不再从Seeyonconfig上配置。配置调整到了 》OA系统管理员后台》系统设置》流版签设置》进行相关配置。

基于文档做好了配置之后,officeSDK.js就知道当前系统使用的金山中台,于是就会主动去装载金山的Adapter。

# 产品调用金山中台API一览

描述 金山中台V5 金山中台V6、V7
强制刷新 /om/weboffice/v1/file/:id/edit/refresh /api/edit/v2/files/:id/refresh
多书签套用 /cps/v2/office/wrapheader /api/cps/sync/v1/wrapheader
文件下载 /cps/v1/download/file/{0} /api/cps/v1/download/{0}
格式转换 /cps/v2/office/convert /api/cps/sync/v1/convert
文档合并 /cps/v2/office/merge /api/cps/sync/v1/merge
查询任务 /cps/v1/task/query /cps/v1/task/query
内容操作 /cps/v2/office/operate /api/cps/sync/v1/content/operate
在线编辑 /weboffice/v1/url /api/edit/v1/files/{file_id}/link
在线预览 /preview/v1/url /api/preview/v1/files/{file_id}/link
回调接口 v1/3rd/file/info v1/3rd/file/info
编撰人:het