在开发过程中阻止 OneNote(在线)缓存我的加载项?
Stop OneNote (online) from caching my Add-In during development?
我在使用 OneNote(在线)缓存我的加载项时遇到了一个烦人的问题。我正在旁加载我的加载项,尽管将新版本推送到我的服务器, 和 对 OneNote 网页进行了全面刷新并重新插入了我的加载项,但我仍然看到旧的加载项内容。如果我使用我的加载项清单中的加载项 URL 打开一个新选项卡,那么我 do 会看到新内容,所以我几乎可以肯定它是一个缓存问题。也就是说,我在OneNote提供的Add-In IFRAME中看到的是old的内容,但是如果加载相同的内容,我看到的是new的内容网页进入一个全新的标签页。
在开发加载项时,是否有设置或可以做些什么来阻止加载项缓存?
注意:在我们等待更好的答案时,现在我正在使用更改清单中的加载项 URL 的老技巧,方法是添加一个良性 URL 参数添加到 URL 的末尾,我随着每个版本的变化而递增。希望有人会提供比这更好的解决方案,因为它有点痛苦,但至少现在是这样。
缓存您的 add-in 的并不是 OneNote Online,而是您的浏览器。
使用以下 HTML headers 来防止缓存:
<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"/>
为了防止缓存您的 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>
我在使用 OneNote(在线)缓存我的加载项时遇到了一个烦人的问题。我正在旁加载我的加载项,尽管将新版本推送到我的服务器, 和 对 OneNote 网页进行了全面刷新并重新插入了我的加载项,但我仍然看到旧的加载项内容。如果我使用我的加载项清单中的加载项 URL 打开一个新选项卡,那么我 do 会看到新内容,所以我几乎可以肯定它是一个缓存问题。也就是说,我在OneNote提供的Add-In IFRAME中看到的是old的内容,但是如果加载相同的内容,我看到的是new的内容网页进入一个全新的标签页。
在开发加载项时,是否有设置或可以做些什么来阻止加载项缓存?
注意:在我们等待更好的答案时,现在我正在使用更改清单中的加载项 URL 的老技巧,方法是添加一个良性 URL 参数添加到 URL 的末尾,我随着每个版本的变化而递增。希望有人会提供比这更好的解决方案,因为它有点痛苦,但至少现在是这样。
缓存您的 add-in 的并不是 OneNote Online,而是您的浏览器。
使用以下 HTML headers 来防止缓存:
<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"/>
为了防止缓存您的 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>