0
我们有2个应用程序(在同一个域中)。 应用1是消费者和总是使用从应用最新的JavaScript文件2.无版本或哈希值的缓存清除
在应用1:
我们如何更新应用程序2 file.js没有要求申请1更改和部署码?应用程序1的用户不应该做CTRL + F5或清除缓存。
什么是最好的技术,同时保持缓存清除工作?
我们有2个应用程序(在同一个域中)。 应用1是消费者和总是使用从应用最新的JavaScript文件2.无版本或哈希值的缓存清除
在应用1:
我们如何更新应用程序2 file.js没有要求申请1更改和部署码?应用程序1的用户不应该做CTRL + F5或清除缓存。
什么是最好的技术,同时保持缓存清除工作?
缓存由HTTP头控制,因此在Web服务器级配置。 https://support.microsoft.com/en-us/help/247404/how-to-modify-the-cache-control-http-header-when-you-use-iis
MDN提供有关Cache-Control头一个很好的参考,其中包括浏览器支持这里的讨论:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#Examples
缓存设置非常设的,因为你使用的是IIS,这可以使用这些指令来完成http头级别,并且是Web服务器的域。如果您提供了有关服务器设置的更多详细信息以及迄今为止已尝试的内容,这将有所帮助。 –
带有IIS的Windows服务器。在IIS中,我们在多个团队维护的同一个域下有多个应用程序。该域中的某些应用程序(生产者)提供由其他应用程序(消费者)使用的JS组件。生产者必须能够部署新版本,而不要求消费者修改代码并进行部署。 –
您可以在应用程序1中使用时间戳进行缓存清除,但您确实不想那样做。只需从应用程序2提供合理的http缓存 - 使用etags。 – Bergi