2
我正在使用Internet Explorer 7中的XSLT轉換XML文檔。我的XSLT導入/ includes - 我試過了兩個 - 另一個XSLT,其行號如下:在Internet Explorer中緩存客戶端XSLT導入
<xsl:import href="utils.xsl" />
每次使用包含XSLT時,這會導致對包含文件的HTTP請求,即使對父XSLT的引用被緩存並重新使用。 IE在每個導入/包含請求的請求上發送一個Pragma: no-cache
標題。
是否可以阻止這些重複的HTTP請求?
- 我可以讓IE緩存客戶端中的文件嗎?
- 如果沒有,我可以讓IE發送一個「If-Modified-Since」頭文件嗎?
爲了完整起見,這裏的相應改造的JavaScript:
var XMLUtil = {
// transforms the sourceStr using the given xslDoc
transformString: function(sourceStr, xslDoc /*XMLDOM doc*/) {
var sourceDoc = XMLUtil.loadFromString(sourceStr);
var resultDoc = new ActiveXObject("Microsoft.XMLDOM");
sourceDoc.transformNodeToObject(xslDoc, resultDoc);
return resultDoc;
},
// creates an XMLDOM document from a string containing XML
loadFromString: function(xml) {
var doc = new ActiveXObject("Microsoft.XMLDOM");
doc.async = false;
doc.loadXML(xml);
if (doc.parseError.errorCode != 0)
throw "Error parsing XML: " + doc.parseError.errorCode;
return doc;
}
}