我有这个使用javascript加载xml文件的代码:
function getXmlDocument(sFile) {
var xmlHttp, oXML;
// try to use the native XML parser
try {
xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", sFile, false); // Use syncronous communication
xmlHttp.send(null);
oXML = xmlHttp.responseXML;
} catch (e) {
// can't use the native parser, use the ActiveX instead
xmlHttp = getXMLObject();
xmlHttp.async = false; // Use syncronous communication
xmlHttp.resolveExternals = false;
xmlHttp.load(sFile);
oXML = xmlHttp;
}
// return the XML document object
return oXML;
}
如果'sFile'的扩展名不是.xml,则该函数始终返回“”。我该怎么做才能解决这个问题?
答案 0 :(得分:1)
我认为这是服务器端的问题:扩展名不是.xml
的文件不能获得MIME类型text/xml
或something alike以及浏览器(XML解析器) )不会将其识别为XML。
确保服务器软件使用正确的MIME类型为您的内容提供服务。使用Apache,您可以在.htaccess
文件中进行更改。应使用适当的Content-Type:
标头发送动态生成的XML。在PHP中,您可以使用header
函数执行此操作。