Node.js XML builder Error: Invalid character in name: during creation of XML document

Node.js XML builder Error: Invalid character in name: during creation of XML document

我正在尝试使用 node.js 和 npm 包 xmlbuilder 创建 XML 文件。当我尝试创建标签时,我有一些特殊字符,例如 : / etc,因此出现以下错误: Error: Invalid character in name: http://google.com.http://google.com

我该如何解决这个问题。我可以用空格替换它,但我不想这样做,我希望我的 XML 保留这些特殊字符。

var root        =   builder.create('test:document')
var ObjectEvent =   root.ele('ObjectEvent')

for(var ex=0; ex<Extension.length; ex++)
{
    Extension[ex].NameSpace     =   Extension[ex].NameSpace;
    Extension[ex].LocalName     =   Extension[ex].LocalName;
    Extension[ex].FreeText      =   Extension[ex].FreeText;
    ObjectEvent.ele(Extension[ex].NameSpace+Extension[ex].LocalName,Extension[ex].FreeText).up()
}
ObjectEvent.ele(Extension[ex].NameSpace+'.'+Extension[ex].LocalName,Extension[ex].FreeText).up()

我的 Extension 元素看起来像这样;

[
  {
    NameSpace: 'http://google.com',
    LocalName: 'http://google.com',
    ExtensionVlaues: 0,
    FreeText: 'Google Website',
    '$$hashKey': 'object:290'
  }
]

我想知道如何保留 XML 文档中的所有特殊字符

XML 命名空间可以是 URI,但 XML 元素名称不能:/ 不允许出现在 XML 元素名称中。

I wanted to know how can I retain all the special characters in my XML document

意识到您的错误与 XML 文档中的特殊字符无关;这是关于 XML 元素 名称中的特殊字符 .

关于 XML 元素,您只需遵守 rules specified in the standard 关于 XML 元素名称中允许的字符。否则,您的数据不是 XML,您和您的调用者将无法使用 XML 工具和库。

另见 How to include ? and / in XML tag