【问题标题】:Stop OneNote (online) from caching my Add-In during development?阻止 OneNote(在线)在开发过程中缓存我的加载项?
【发布时间】:2017-06-13 08:00:11
【问题描述】:

我在 OneNote(在线)缓存我的加载项时遇到了烦人的问题。我正在旁加载我的加载项,尽管将新版本推送到我的服务器,并且完全刷新 OneNote 网页并重新插入我的加载项,但我仍然看到旧的添加-在内容。如果我使用加载项清单中的加载项 URL 打开一个新选项卡,那么我确实看到了新内容,因此我几乎可以肯定这是一个缓存问题。换句话说,我在 OneNote 提供的 Add-In IFRAME 中看到了 old 内容,但是如果我将同一个网页加载到一个全新的页面中,我看到的是 new 内容标签。

在我开发插件时,我可以做些什么来阻止插件缓存?

注意:当我们等待更好的答案时,现在我正在使用旧技巧,即通过在 URL 末尾添加一个良性 URL 参数来更改清单中的加载项 URL我随着每个版本的变化而增加。希望有人能提供比这更好的解决方案,因为这有点痛苦,但至少现在是这样。

【问题讨论】:

    标签: caching office-js office-addins onenote-api


    【解决方案1】:

    缓存加载项的并不是真正的 OneNote Online,而是浏览器。

    使用以下 HTML 标头来防止缓存:

    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="Expires" content="0"/>
    

    Prevent caching of HTML page

    为了防止你的 JS 被缓存,你可能需要做更多的事情。我建议按照这里的建议在您的 JS 引用中附加一个随机数。

    <script language="JavaScript">
        var s=document.getElementsByTagName('script')[0];
        var sc=document.createElement('script');
        sc.type='text/javascript';
        sc.async=true;
        sc.src='http://PATHTOYOURSCRIPT.js?v' + Math.random(); 
        s.parentNode.insertBefore(sc,s);
    </script>
    

    Preventing Cache on JavaScript files

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-17
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 2011-04-07
      • 2020-02-19
      • 1970-01-01
      相关资源
      最近更新 更多