我正在使用C#/ ASP.Net中使用動態生成的KML文件的基於OpenLayers的地圖視圖。在代碼隱藏文件,我定義的查詢字符串參數的KML文件調用,這可能是這樣的:如何防止IE8緩存OpenLayers地圖數據(ASP.Net)
/layouts/KmlDataGenerator.aspx?vaccination=2 &隊列= 2003%7c2010 &性= 3個& x軸= Kommune & landsdel = 100 &顯示地圖= &的數據類型=疫苗接種& extendedfilters =假
此URL字符串被插入KmlFileName在以下的OpenLayers JS-代碼字面:
vector = new OpenLayers.Layer.Vector("KML", {
projection: wgs84,
strategies: [new OpenLayers.Strategy.Fixed()],
isBaseLayer: false,
protocol: new OpenLayers.Protocol.HTTP({
url: '<asp:Literal ID="KmlFileName" runat="server"/>',
format: new OpenLayers.Format.KML({
extractStyles: true,
extractAttributes: true
})
})
});
問題是,IE8和更早的似乎緩存的東西 - 我不知道究竟是什麼,但除非我打CTRL + F5或手動清除IE8中的緩存,否則地圖永遠不會顯示。這個問題是不存在於IE9,Firefox或Chrome ...
我試過添加元標記,以防止瀏覽器緩存的頁面,我也試圖添加一個隨機生成的字符串的查詢字符串每個javascript調用,但沒有任何幫助。
任何想法將不勝感激!
有趣的是,你移動了哪些文件? –