我的xml文件有
<!DOCTYPE application [<!ENTITY % common SYSTEM "../common.ent">
%common;]>
并且我使用了&commonFaults;
(这是./common.ent
文件中定义的实体之一),许多位于xml文件中
在我的节点应用程序中,我想输入stringifed xml文件内容。 作为回报,我想要解决所有实体。
输入
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE application [<!ENTITY % common SYSTEM "../common.ent">
%common;]>
<application xmlns="http://wadl.dev.java.net/2009/02">
<grammars>
<include href="../xsd/api.xsd"/>
<include href="../xsd/api-common.xsd"/>
</grammars>
<method name="GET" id="listVersionsv2">
&commonFaults;
</method>
</application>
common.ent文件:
<!ENTITY commonFaults
'
<response status="503" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml" element="csapi:serviceUnavailable"/>
<representation mediaType="application/json"/>
</response>
<response status="400" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml" element="csapi:badRequest"/>
<representation mediaType="application/json"/>
</response>
'>
期望的输出
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE application [<!ENTITY % common SYSTEM "../common.ent">
%common;]>
<application xmlns="http://wadl.dev.java.net/2009/02">
<grammars>
<include href="../xsd/api.xsd"/>
<include href="../xsd/api-common.xsd"/>
</grammars>
<method name="GET" id="listVersionsv2">
<response status="503" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml" element="csapi:serviceUnavailable"/>
<representation mediaType="application/json"/>
</response>
<response status="400" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml" element="csapi:badRequest"/>
<representation mediaType="application/json"/>
</response>
</method>
</application>
我使用xmllint
选项搜索--noent
,这样做有效。
我正在寻找一个类似的lib /工具,它作为npm模块执行此操作,我可以要求&#39;在节点应用程序中完成与xmllint
相同的任务。
我不想使用节点的ChildProcess。