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;
}
}