我正在研究基于打字稿的节点程序,并尝试从已有的xml文件读取XML数据(此文件从第三方位置下载)。我在这种情况下使用xpath(https://www.npmjs.com/package/xpath)
以下是XML文件的根节点
<bookstore xmlns="https://www.example.com/schema/papers/doc/5.0" id="5001" name ="amber" >
以下是示例代码
var somePath = //abc
var result = xpath.evaluate(
somePath, // xpathExpression
someDocument, // contextNode
{“”: “https://www.example.com/schema/papers/doc/5.0”},// namespaceResolver
xpath.XPathResult.ANY_TYPE, // resultType
null // result
);
但是我无法使用上述代码检索任何数据。我发现这段代码没有解析名称空间。原因似乎没有可用于识别当前命名空间的有效命名空间。
例如,如果第三方XML具有名称空间,例如xmlns:abc = https://www.example.com/schema/papers/doc/5.0我可以在 xpath.eveluate 下使用它(例如{“abc”:“{{3} }}}}并检索所需的数据。
有没有办法从没有名称的这种命名空间中检索数据?请善意地阐明一下。提前谢谢。