有人知道如何使用jQuery或其他DOM库将有效的XML字符串转换为不使用的JavaScript对象吗?
我想在JavaScript中执行此操作的原因是因为这只是服务器端,并且与特定浏览器没有任何关系。
重新强调 - 这不是客户端JavaScript 。它是服务器端。
谢谢,
道格
答案 0 :(得分:0)
我怀疑约翰保罗卡德纳斯在评论中的片段是你最接近的。希望您可以在特定的服务器端环境中找到DOM库,我不熟悉您所描述的平台。
假设您可以找到类似于DOMParser的内容(有关JS中XML解析的更多信息,请参阅http://www.w3schools.com/dom/dom_parser.asp),这是我所知道的最佳方式。
当然,从那里开始,您将通过遍历DOM树手动解析代码。那是因为没有标准的方法将XML转换为JSON;它们并不完全直接兼容。例如,XML节点具有属性; JSON没有。如何处理细微差别取决于您的特定XML架构以及特定项目的需求。
答案 1 :(得分:0)
我尝试过看Webcrossing,但似乎他们没有该产品的在线文档。我想你必须付钱才能得到令人惊讶的文档,因为即使是商业产品,现在往往有免费的在线文档 - 开发人员如何评估产品?
如果您确实可以访问文档(您/您的雇主为此付费应该访问),我建议您查看如何在文档中处理XML。 Webcrossing声称内置了XMLRPC功能,这应该意味着内置的XML解析功能。
大多数内置此类内容的javascript引擎都倾向于实现一个DOM解析器,它将XML转换为DOM对象。这样做的好处是您可以使用熟悉的DOM操作(如getElementById()
,getElementsByTagName()
,element.children
等)来遍历和处理XML文档。这样做的缺点是您需要使用上面的详细DOM操作来遍历和处理XML文档。
但是,如果Webcrossing没有提供内置的XML解析器(这不太可能,因为它支持XMLRPC),那么下一个最好的选择是移植node.js模块。这里列出了一些与XML相关的模块:
https://github.com/joyent/node/wiki/modules#wiki-parsers-xml
上面的列表并非详尽无遗。有关完整列表,您可以在此处搜索npm注册表:
通过谷歌的快速搜索,我认为你最好的选择是移植这个模块(偶然没有在wiki中列出):
https://github.com/nfarina/xmldoc
xmldoc模块的独特之处在于它可以在节点和Web浏览器中使用。所以它可能有更好的移植机会。
在任何情况下,请先阅读您的文档(或联系Webcrossing的技术支持)。