下面要解析的xml:
<ENVELOPE>
<ABC>
<DEF>apple</DEF>
<GHI>4</GHI>
<JKL>85</JKL>
</ABC>
<MNO>add</MNO>
<PQR></PQR>
<STU></STU>
</ENVELOPE>
解析后的响应:
{
“信封”:{“ABC”:{“DEF”:“苹果”,“GHI”:“4”,“JKL”:“85”},“MNO”:“添加”}}
其他两个标签已被 xml2js 解析丢弃。但我需要它至少是空的。尝试使用解析器的选项,但还没有运气
这是我获取解析器的代码:
private getParser() {
let nameToLowerCase = (name: string): string => {
return name.toLowerCase();
}
let options: xml2js.Options = {
attrkey: '_',
charkey: '$',
explicitCharkey: true,
emptyTag: null,
normalize: true,
normalizeTags: true,
explicitArray: false,
trim: true,
tagNameProcessors: [nameToLowerCase],
attrNameProcessors: [nameToLowerCase]
};
return new xml2js.Parser(options);
}