我想更好地理解GWT ClientBundle和緩存的使用。GWT ClientBundle緩存如何工作?
如果我有一個大的文本文件,例如,我想提供給我的客戶,我可以使用
public interface MyResources extends ClientBundle {
public static final MyResources INSTANCE = GWT.create(MyResources.class);
@Source("myText.txt")
public TextResource myText();
}
//-- then later to use the text
String text = MyResources.INSTANCE.myText().getText();
這是否意味着該文件「myText.txt」將是從客戶端第一次運行應用程序時從服務器下載,然後該文件將存儲在瀏覽器的緩存中,以便將來使用該應用程序時,該文件不需要被下載?
如果是這樣,如果我更改「myText.txt」會發生什麼情況,應用程序是否知道獲取新版本?
最後,如果文件確實存儲在緩存中,那麼這與HTML5中的本地存儲有何不同?
謝謝。
與HTML5存儲的區別在於,用於客戶端捆綁資源等的緩存純粹是HTTP資源的標準瀏覽器緩存,它基於URL和HTTP緩存頭自動緩存,而您將管理進入HTML5的內容存儲自己的應用程序。 –