wps在线预览编辑过程中,其它系统修改了word,刷新页面之后,wps依然加载旧文档内容的问题

阅读次数 323

有这样一个问题和需求: 第一步:我通过wps在线预览编辑加载一个word文件;
第二步:我通过其它系统或者软件更新了这个文档,但是没调用wps的保存接口;
第三步:我再次通过wps在线预览编辑查看这个word的时候,发现这个word并不是最新的,还是加载的旧文档内容。
这个问题怎么解决呢?

2 Answers

首先要确保您通过其它方式的保存,正确更新了文件的版本。如果您的更新没有被保存为新的版本(比如跟WPS WebOffice保存的版本有冲突),会引发问题。

目前还没有反向(从外部触发到 WPS WebOffice)的通知机制。暂时只能通过如下方式处理:

  1. WPS WebOffice 有离线版本检查逻辑,最近一次用户编辑动作结束后,无人编辑一段时间后(默认1分钟),后台会触发版本检查动作,并提示用户有新的离线版本;
  2. 用户主动刷新页面。

后续会提供一批服务端 API,其中包括通知 WPS WebOffice 刷新(重新打开最新版本的)文件。

我在wps回调文档下载地址的时候重新计算了文档校验和,并返回,预览还是旧文件啊

咱们这边是不是文件做了缓存,首次加载之后,之后再次预览都是在缓存中读取,不访问用户的文件服务重新下载文件了,如果是这种,能每次打开在线编辑预览,都去读新文件的设置机制吗

对,为了提高速度,WebOffice 这边确实会缓存一段时间用户的原始文件。后续打开的时候,会通过 /file 接口返回的 digest 字段,判断当前文件是否有变化。如果没有变化,就直接使用缓存的文件内容。您的是希望即使文件没变化,也重新读取吗?

我也是这个问题,请问楼主解决了吗