如何在Mac上清除Excel 2016任务窗格加载项的客户端浏览器caching?

这是前面问题的一个后续问题 ,其中“如何确保在我的任务窗格加载项中看到最新的JS代码”的答案涉及通过服务器添加的元/无caching标记控制客户端caching行为(或版本化服务器资源)。

但是,我正在寻找一种手动方式, 在客户端上 ,为最终用户清除客户端caching似乎存储JavaScript文件,并防止更新的JS文件在服务器上被任务窗格添加使用-在。 在开发过程中,我会经常更新服务器上的JS资源,我正在寻找一个客户端解决scheme,允许使用这些更新的文件。

环境 :在Mac(OSX 10.11.5)上运行的Excel 2016的桌面版本使用Excel / Office.js的v1.2的任务窗格加载项。

场景 :将加载项工件部署到Web服务器,在Mac上运行加载项。 然后在插件中更新foo.js中的代码,重新部署到Web服务器。 运行加载项并从foo.js中查看旧的(更新前)行为。

我曾经尝试过

  1. 在同一台Mac上,直接从Safari的Web应用程序加载foo.js。 我可以看到我期望在更新版本中的js代码的更改。

  2. 清除Safari的caching(隐私>删除所有的网站数据)(我怀疑这不会基于#1的工作 – Safari似乎不与Excel共享caching,但值得一试) – 没有任何改变。

  3. 戳到〜/ Library / Containers / com.microsoft.Excel下试图find一个caching – 删除〜/ Library / Containers / com.microsoft.Excel / Data / Library / Caches / com.microsoft.Excel – 没有帮助。

  4. 使用任务窗格的上下文菜单中的Reload菜单项(在Mac上看起来像[i]) – 没有区别:仍旧看到旧的foo.js。

Excel(桌面)2016任务窗格加载项引用的JavaScript文件存储在哪里? (在Mac上)以及最终用户如何删除它们?

我绊倒了com.Microsoft.OsfWebHost,而从Mac上的terminal上使用“默认”命令。 一些谷歌search出现了这个基本上提供了答案的文章 。 对于那里指示的内容略作修改,这就是我所做的:

  1. 确保我已经退出了Excel
  2. 在Finder中,导航到〜/ Library / Containers / com.Microsoft.OsfWebHost / Data / Library / Caches
  3. 在那里重命名(或删除)名为“com.Microsoft.OsfWebHost”的文件夹
  4. 在Excel中打开我的工作簿(它已经有加载项插入)
  5. 似乎没有任何东西正在加载,所以我使用了任务窗格上下文菜单中的重新加载命令

现在我可以看到我的Java脚本文件的更新版本已经加载。

这只是基于经validation据,没有来自微软或苹果公司的certificate,所以你的里程可能会有所不同。

顺便说一句,com.Microsoft.OsfWebHost有一些有趣的“默认”属性:

defaults read com.Microsoft.OsfWebHost { WebKitCacheModelPreferenceKey = 1; WebKitDebugFullPageZoomPreferenceKey = 1; WebKitPluginsEnabled = 0; WebKitUsesPageCachePreferenceKey = 0; } 

谷歌searchWebKitCacheModelPreferenceKey没有出现任何官方文档,但似乎有build议,将其设置为0可能会抑制caching。