<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to force a browser cache refresh after updating WAB app in ArcGIS Web AppBuilder Questions</title>
    <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620039#M16396</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When posting a link to this discussion on the resource list, I noticed I had a link to this site&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://www.refreshyourcache.com/en/home/" title="http://www.refreshyourcache.com/en/home/"&gt;Refreshyourcache.com - The Guide to Clear your Browser Cache!&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That is more for manually refreshing I believe, but good to include in your discussion.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 08 Dec 2016 23:57:54 GMT</pubDate>
    <dc:creator>RebeccaStrauch__GISP</dc:creator>
    <dc:date>2016-12-08T23:57:54Z</dc:date>
    <item>
      <title>How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620037#M16394</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am hoping there is a 'simple' answer for this as I have seen a few complicated answers. Long story short, I have a &amp;nbsp;Web AppBuilder app that I built through the Developer edition (2.1) and it is hosted on my website. After it is posted and loaded, if I update certain aspects of the app and change them on the web, they do not reflect due to the browser cache (as far as I am aware).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/migrated-users/3101" target="_blank"&gt;Robert Scheitlin, GISP&lt;/A&gt;‌&amp;nbsp;pointed me to a couple of very helpful threads but I feel like I need just a little more help so I am posting a new question (sorry GeoNet).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this thread,&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/thread/158241" target="_blank"&gt;Refreshing Web Appbuilder&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/migrated-users/16374" target="_blank"&gt;Stan McShinsky&lt;/A&gt;‌ asks how to refresh WAB. His conclusion was to edit that last few lines of the main index.html file to reflect this:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="language-javascript script token"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;script&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;src&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;env.js?ver&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;1.1&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;script&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp; 
&lt;SPAN class="language-javascript script token"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;script&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;type&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;text/javascript&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;src&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;simpleLoader.js?ver&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;1.1&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;script&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp; 
&lt;SPAN class="language-javascript script token"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;script&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;type&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;text/javascript&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;src&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;init.js?ver&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;1.1&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;script&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;He indicated he had little success with this, so I'm a little hesitant on making these changes. &lt;SPAN style="font-size: 22px;"&gt;&lt;STRONG&gt;Question, what does adding "ver=1.1" do and what can improve this?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In this thread,&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/thread/172632" target="_blank"&gt;Automate Cache Clearing - Web App Builder&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/migrated-users/21520" target="_blank"&gt;Sam Libby&lt;/A&gt;‌ linked back to a stacked overflow post that mentions how to 'control web page caching' here:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://stackoverflow.com/questions/49547/how-to-control-web-page-caching-across-all-browsers" title="http://stackoverflow.com/questions/49547/how-to-control-web-page-caching-across-all-browsers" rel="nofollow noopener noreferrer" target="_blank"&gt;http - How to control web page caching, across all browsers? - Stack Overflow&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This sounds like a good answer but I am not sure how to make the changes suggested in the SO post. There are many ways to "set" the change (including using PHP, node.js, ASP, Ruby, etc etc) but I am not skilled enough to know what change I need to make in my app. &lt;SPAN style="font-size: 22px;"&gt;&lt;STRONG&gt;Question, can someone point me in the right direction on which change I need to make to my Developer Edition WAB application, based on the link above, on how to 'control web browser cache'?&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since that thread was written eight years ago, would it be safe-ish to assume that changing the HTML4 &amp;nbsp;code section would be the right answer?&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Cache-Control&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;no-cache, no-store, must-revalidate&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Pragma&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;no-cache&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Expires&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;0&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance and sorry for the long post!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:28:20 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620037#M16394</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2021-12-12T02:28:20Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620038#M16395</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Adding text after the "?" like "?ver1.1" is suppose to tell the browser that there is a new version of the file and should grab it. If is is the same file name the browser keeps a local copy to make things faster. You could set up some code to add a time value after the ? so every time you open the web page it will be a new file name for the javascript file. By adding the ver1.1 it just allows you to control when you want the browser to update the needed files. This sounds like it should work, but like I said before I have not got this to work for WAB yet. unless someone knows how to do it.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Dec 2016 23:14:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620038#M16395</guid>
      <dc:creator>StanMcShinsky</dc:creator>
      <dc:date>2016-12-08T23:14:11Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620039#M16396</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When posting a link to this discussion on the resource list, I noticed I had a link to this site&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://www.refreshyourcache.com/en/home/" title="http://www.refreshyourcache.com/en/home/"&gt;Refreshyourcache.com - The Guide to Clear your Browser Cache!&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That is more for manually refreshing I believe, but good to include in your discussion.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Dec 2016 23:57:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620039#M16396</guid>
      <dc:creator>RebeccaStrauch__GISP</dc:creator>
      <dc:date>2016-12-08T23:57:54Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620040#M16397</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Stan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This makes sense. I have not tried it but I suppose it won't really hurt so I will try it soon. I too would like to know of&amp;nbsp;someone who might have had success with something like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Adrian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Dec 2016 16:05:27 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620040#M16397</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2016-12-09T16:05:27Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620041#M16398</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Becky,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I agree, it is a little too manual for what I am looking for, but still it's a great resource that delivers easy info all in one space. Thanks for sharing this!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;~Adrian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Dec 2016 16:07:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620041#M16398</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2016-12-09T16:07:01Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620042#M16399</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, I tried putting in Stan's code AND that HTML4 code block both into my index.html file. Neither one appeared to have forced the browser cache refresh. Does that mean virtually nothing can be done? Or maybe wait a day or so and see if refreshes happen on their own?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.esri.com/migrated-users/3101" target="_blank"&gt;Robert Scheitlin, GISP&lt;/A&gt;‌ or &lt;A href="https://community.esri.com/migrated-users/21520" target="_blank"&gt;Sam Libby&lt;/A&gt;‌, any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am guessing I need something more robust in my index.html file than this:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Cache-Control&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;no-cache, no-store, must-revalidate&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Pragma&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;no-cache&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;meta&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;http-equiv&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Expires&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;content&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;0&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:28:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620042#M16399</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2021-12-12T02:28:23Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620043#M16400</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;The issue is that the meta tags are not used in most modern browser in lieu of the response header from the server:&lt;/P&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;P&gt;Important to know is that when a HTML page is served over a HTTP connection, and a header is present in both the HTTP response headers and the HTML &amp;lt;meta http-equiv&amp;gt; tags, then the one specified in the HTTP response header will get precedence over the HTML meta tag. &lt;STRONG&gt;The HTML meta tag will only be used when the page is viewed from local disk file system via a file:// URL&lt;/STRONG&gt;. See also &lt;A href="http://www.w3.org/TR/html4/charset.html#h-5.2.2" rel="nofollow noreferrer"&gt;W3 HTML spec chapter 5.2.2&lt;/A&gt;. Take care with this when you don't specify them programmatically, because the webserver can namely include some default values.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I have never found a good answer to this issue and the need for it has always been far and in between for me, so loosing the cached resource ability for my site is not an answer for the few times I need to ensure the latest is received by my users.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Dec 2016 19:42:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620043#M16400</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2016-12-12T19:42:29Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620044#M16401</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hmm,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess there is a lot that I do not understand and maybe you're right, there isn't a strong need for this. The next paragraph even goes on to say:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt;Generally, you'd better just &lt;/SPAN&gt;&lt;STRONG style="color: #242729; background-color: #ffffff; border: 0px; font-weight: bold;"&gt;not&lt;/STRONG&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt; specify the HTML meta tags to avoid confusion by starters, and rely on hard HTTP response headers. Moreover, specifically those &lt;/SPAN&gt;&lt;CODE style="color: #242729; border: 0px; font-size: 13px; padding: 1px 5px;"&gt;&amp;lt;meta http-equiv&amp;gt;&lt;/CODE&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt; tags are &lt;/SPAN&gt;&lt;STRONG style="border: 0px; font-weight: bold;"&gt;&lt;A href="http://validator.w3.org/" rel="nofollow noreferrer" style="color: #005999; background-color: #ffffff; border: 0px;"&gt;invalid&lt;/A&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt;in HTML5. Only the &lt;/SPAN&gt;&lt;CODE style="color: #242729; border: 0px; font-size: 13px; padding: 1px 5px;"&gt;http-equiv&lt;/CODE&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt; values listed in &lt;/SPAN&gt;&lt;A href="http://dev.w3.org/html5/spec-preview/the-meta-element.html#attr-meta-http-equiv" rel="nofollow noreferrer" style="color: #005999; background-color: #ffffff; border: 0px;"&gt;HTML5 specification&lt;/A&gt;&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt; are allowed.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;...if I was paying attention.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Plus, further down the thread someone points out:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;(&lt;SPAN style="color: #242729; background-color: #ffffff;"&gt;hey, everyone: please don't just mindlessly copy&amp;amp;paste all headers you can find)&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Well, I suppose I will leave the defaults in and just deal with it (though, I am secretly sort of still looking into it... I keep finding almost answers, or solutions that work for some but not for all; it's just one big giant tease...).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One weird thing - my browsers are inconsistent in terms of when they will show the updated content. Sometimes it's instant, sometimes it's hours later, but, it seems that over time the browser will show the updated stuff. Weird...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Dec 2016 15:03:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620044#M16401</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2016-12-13T15:03:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620045#M16402</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, so no more beating the dead horse. Here is what I learned with my testing and limited knowledge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;A) Sometimes the web browser will refresh automatically to where the user does not need to do anything.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;2) When the browser does not refresh automatically, it will eventually refresh (give it a day max, then it should be where it needs to be).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;D) I have been successful in forcing FireFox to clear its cache (I am not sure why it isn't working in Chrome and I don't look at other browsers). I used this thread:&amp;nbsp;&lt;A class="link-titled" href="http://stackoverflow.com/a/24031723" title="http://stackoverflow.com/a/24031723"&gt;No caching in HTML5 - Stack Overflow&lt;/A&gt;&amp;nbsp; &amp;nbsp; ... and followed these directions to create an appcache manifest file and throw it into the index.html file:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P style="color: #242729; background-color: #ffffff; border: 0px; margin: 0px 0px 1em;"&gt;Here is an example of &lt;CODE style="border: 0px; font-size: 13px; padding: 1px 5px;"&gt;your-manifest-file&lt;/CODE&gt; to force updates to all resources.&lt;/P&gt;&lt;PRE class="" style="color: #393318; border: 0px; font-size: 13px; margin: 0px 0px 1em; padding: 5px;"&gt;&lt;CODE style="border: 0px; font-size: 13px;"&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt;CACHE MANIFEST NETWORK&lt;/SPAN&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt;*&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P style="color: #242729; background-color: #ffffff; border: 0px; margin: 0px 0px 1em;"&gt;and append &lt;CODE style="border: 0px; font-size: 13px; padding: 1px 5px;"&gt;manifest&lt;/CODE&gt; attribute to &lt;CODE style="border: 0px; font-size: 13px; padding: 1px 5px;"&gt;&amp;lt;html&amp;gt;&lt;/CODE&gt; element.&lt;/P&gt;&lt;PRE class="" style="color: #393318; border: 0px; font-size: 13px; margin: 0px 0px 1em; padding: 5px;"&gt;&lt;CODE style="border: 0px; font-size: 13px;"&gt;&lt;SPAN class="" style="color: #7d2727; border: 0px; font-size: 13px;"&gt;&amp;lt;html&lt;/SPAN&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt; &lt;/SPAN&gt;&lt;SPAN class="" style="color: #e64320; border: 0px; font-size: 13px;"&gt;manifest&lt;/SPAN&gt;&lt;SPAN class="" style="color: #303336; border: 0px; font-size: 13px;"&gt;=&lt;/SPAN&gt;&lt;SPAN class="" style="color: #0f74bd; border: 0px; font-size: 13px;"&gt;"your-manifest-file"&lt;/SPAN&gt;&lt;SPAN class="" style="color: #7d2727; border: 0px; font-size: 13px;"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P style="color: #242729; background-color: #ffffff; border: 0px; margin: 0px 0px 1em;"&gt;Required for all HTML files you want to disable cache.&lt;BR /&gt;Can not be avoided because it is specification of HTML5.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- (there is also decent info here:&amp;nbsp;&lt;A class="link-titled" href="http://www.w3schools.com/html/html5_app_cache.asp" title="http://www.w3schools.com/html/html5_app_cache.asp"&gt;HTML5 Application Cache&lt;/A&gt;&amp;nbsp;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Either way, I am finished looking into this and appreciate everyone's help with this!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;&lt;EM&gt;(did anyone catch the reference in the 'numbering' above to a certain holiday movie?)&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Dec 2016 23:03:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620045#M16402</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2016-12-13T23:03:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620046#M16403</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have the same problem with Chrome does anybody found a solution?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Mar 2017 13:39:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620046#M16403</guid>
      <dc:creator>SebastienPelletier</dc:creator>
      <dc:date>2017-03-03T13:39:38Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620047#M16404</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Now, there is a variable (deployVersion) in env.js to avoid cache.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Whenever you update your app, you can change this variable to avoid browser cache.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But there are still some limitations:&lt;/P&gt;&lt;P&gt;* The images and fonts in the css files may still be cached.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Mar 2017 07:03:06 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620047#M16404</guid>
      <dc:creator>JunshanLiu</dc:creator>
      <dc:date>2017-03-07T07:03:06Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620048#M16405</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This sounds very promising. I haven't tested it yet but not sure I am doing this right.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I found the env.js file in the root folder of one of my apps. On line 81, this is written:&lt;/P&gt;&lt;PRE class="language-javascript line-numbers"&gt;&lt;CODE&gt;deployVersion &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'2.2'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I currently have WAB 2.2. Does that mean I just need to change this variable (to anything or to something like 2.3 or 3) in order to make the app avoid browser cache?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Mar 2017 07:26:08 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620048#M16405</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2017-03-09T07:26:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620049#M16406</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Looking at this further, that deployVersion variable is used towards the end of the script in a function called 'appendDeployVersion' (and that function is used twice above it) as indicated here:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;global&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;avoidRequireCache &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;require&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; dojoInject &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; require&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;injectUrl&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 require&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;injectUrl &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; callback&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; owner&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 url &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;appendDeployVersion&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;dojoInject&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; callback&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; owner&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
global&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;avoidRequestCache &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;aspect&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; requestUtil&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 aspect&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;after&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;requestUtil&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'parseArgs'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;args&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 args&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;url &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;appendDeployVersion&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;args&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; args&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;appendDeployVersion&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="regex token"&gt;/^http(s)?:\/\//&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;test&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;||&lt;/SPAN&gt; &lt;SPAN class="regex token"&gt;/^\/proxy\.js/&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;test&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;||&lt;/SPAN&gt; &lt;SPAN class="regex token"&gt;/^\/\//&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;test&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; url&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;url&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;indexOf&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'?'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 url &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; url &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'&amp;amp;wab_dv='&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; deployVersion&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 url &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; url &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'?wab_dv='&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; deployVersion&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; url&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, I assume the only place that the variable should change would be in line 81 that says deployVersion is '2.2'.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:28:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620049#M16406</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2021-12-12T02:28:26Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620050#M16407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;using deployVersion does not work.&lt;/P&gt;&lt;P&gt;This 'deployVersion' is for appending the version to the URL, but in no way does this help if one deploys a web application to a web server (e.g. IIS), the users use their browsers and then you upgrade the app and re-point the IIS web application to the new (upgraded version) app. &amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The user would type in the same URL... but this mentioned deployVersion doesnt force a browser refresh. &amp;nbsp;&lt;/P&gt;&lt;P&gt;I also tested this to validate... result was, users still loaded prior web app and had to force using browser manually.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Aug 2017 20:16:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620050#M16407</guid>
      <dc:creator>MichaelRobb</dc:creator>
      <dc:date>2017-08-11T20:16:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620051#M16408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;Does that mean I just need to change this variable (to anything or to something like 2.3 or 3) in order to make the app avoid browser cache?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I could never validate that this worked.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Aug 2017 20:16:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620051#M16408</guid>
      <dc:creator>MichaelRobb</dc:creator>
      <dc:date>2017-08-11T20:16:44Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620052#M16409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We were experiencing css&amp;nbsp;files being cached in chrome (from disk).&amp;nbsp; It appears that chrome was not checking the ETag, cache-control, expires, or last-modified headers to determine if the .css files should be re-cached (as described &lt;A href="https://medium.com/@codebyamir/a-web-developers-guide-to-browser-caching-cc41f3b73e7c"&gt;here &lt;/A&gt;and &lt;A href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching#Freshness"&gt;here&lt;/A&gt;).&amp;nbsp; we tried manually adding headers in our IIS server and still no success getting chrome to re-load the .css files.&amp;nbsp; Forcing all the anonymous users to clear the cache or force refresh is not an option.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Bottom Line:&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;We updated the env.js&amp;nbsp;&lt;STRONG&gt;deployVersion&lt;/STRONG&gt; value and that did add the new value to the URI which does require chrome to load a new .css file (since it looks like a new resource).&amp;nbsp; Our plan is to update this&amp;nbsp;&lt;STRONG&gt;deployVersion&lt;/STRONG&gt; variable on deployment time to avoid the cache. So far its working well...&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here was the URL being loaded from the cache:&amp;nbsp;&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&lt;IMG class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/410898_pastedImage_1.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And when updating the&amp;nbsp;&lt;STRONG&gt;deployVersion&lt;/STRONG&gt; variable, the browser does "reload" the css file since it sees it as a new URL:&amp;nbsp;&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&lt;IMG class="image-2 jive-image" src="https://community.esri.com/legacyfs/online/410960_pastedImage_3.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Jun 2018 19:32:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620052#M16409</guid>
      <dc:creator>pfoppe</dc:creator>
      <dc:date>2018-06-08T19:32:58Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620053#M16410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Patrick, this is helpful. I'll have to check this out when I get back to this application!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2018 18:01:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620053#M16410</guid>
      <dc:creator>AdrianWelsh</dc:creator>
      <dc:date>2018-06-11T18:01:18Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620054#M16411</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For reference, the best approach I have found to work without ever having an issue is to do the following:&lt;/P&gt;&lt;P&gt;Add a clientCache control (in the &lt;STRONG&gt;web.config&lt;/STRONG&gt;) and set the controlMaxAge to your desired time.&lt;/P&gt;&lt;P&gt;e.g.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;lt;!--expire after 1 day--&amp;gt;&lt;BR /&gt; &amp;lt;clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="1.00:00:00"/&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Oct 2018 16:53:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620054#M16411</guid>
      <dc:creator>MichaelRobb</dc:creator>
      <dc:date>2018-10-12T16:53:41Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620055#M16412</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Michael, just tried editing the web.config file using&amp;nbsp;your supplied code. The only thing I changed was to change the time frame from 1 day to 5 minutes, and didn't seem to have any luck when using Chrome. It's possible I put the code in the wrong spot, in this case, within the staticContent tags. I tried a couple of other places, but that ended up breaking the application entirely. Since there is not that many spots to put it, is there something I am missing?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jan 2019 22:09:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620055#M16412</guid>
      <dc:creator>daveostrander</dc:creator>
      <dc:date>2019-01-08T22:09:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to force a browser cache refresh after updating WAB app</title>
      <link>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620056#M16413</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;False Alarm. I believe that my Chrome browser just went to lunch. As is typical for me, I have a billion open tabs at all times, and usually they remain open for days on end. I believe that the browser just needed to be completely closed and that would have solved&amp;nbsp;the issues I was seeing in&amp;nbsp;Chrome. However, for those of you looking for a complete listing of the myriad of ways to control&amp;nbsp;user caches&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;(in IIS at least)&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.microsoft.com/en-us/iis/configuration/system.webserver/staticcontent/clientcache" style="color: #2989c5; text-decoration: none;"&gt;this documentation&lt;/A&gt;&amp;nbsp;lists them&amp;nbsp;all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My plan going forward will be to use the "Set Common HTTP Response Headers" in IIS manager and set the "Expire Web Content" to immediately (A.K.A. No Cache) on an individual application or on all of them depending on what has been updated, and then leave that in place for at least a few weeks to ensure that most if not all users will get the refresh. Once satisfied that everyone is now pointing at the newest version then I will simply&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;flip&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;the IIS setting back to once again improve application performance.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope that helps&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Jan 2019 19:52:57 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-web-appbuilder-questions/how-to-force-a-browser-cache-refresh-after/m-p/620056#M16413</guid>
      <dc:creator>daveostrander</dc:creator>
      <dc:date>2019-01-09T19:52:57Z</dc:date>
    </item>
  </channel>
</rss>

