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