使用GWT ScriptInjector加载脚本时如何设置CacheHeaders?

时间:2014-04-01 20:21:46

标签: java javascript caching gwt

我使用GWT ScriptInjector注入一个外部JavaScript文件,如下所示:

ScriptInjector.fromUrl("http://example.com/foo.js").setCallback(
     new Callback() {
        public void onFailure(Exception reason) {
          Window.alert("Script load failed.");
        }
        public void onSuccess(Void result) {
          Window.alert("Script load success.");
        }
     }).inject();

这样可以正常工作但不设置expires标头,即浏览器不会缓存此脚本。

是否可以为ScriptInjector设置标头以缓存外部js文件?

1 个答案:

答案 0 :(得分:1)

您无法在无法控制的资源上设置标头。最有可能的情况是,如果此脚本不经常更改,则此脚本的所有者已设置标头以允许缓存。

但是,如果您确实控制了此文件(即此脚本位于您的服务器上),则您设置标题的方式与在任何其他静态资源上设置的方式相同。