将原始XML解析为JSON
parse raw XML to JSON
我正在nodejs-expressjs上工作,我得到了原始XML的响应。我想将其转换为javascript数组或json数组,以便我可以检索域名及其状态。我想在HTML文件上显示的名称和状态。Fowling是我的Raw XML
<?xml version='1.0' encoding="UTF-8" standalone="no" ?>
<!DOCTYPE OPS_envelope SYSTEM "ops.dtd">
<OPS_envelope>
<header>
<version>0.9</version>
</header>
<body>
<data_block>
<dt_assoc>
<item key="response_code">200</item>
<item key="response_text">Command completed successfully</item>
<item key="attributes">
<dt_assoc>
<item key="lookup">
<dt_assoc>
<item key="items">
<dt_array>
<item key="0">
<dt_assoc>
<item key="status">taken</item>
<item key="domain">ashok.com</item>
</dt_assoc>
</item>
<item key="1">
<dt_assoc>
<item key="domain">ashok.net</item>
<item key="status">available</item>
</dt_assoc>
</item>
<item key="2">
<dt_assoc>
<item key="domain">ashok.org</item>
<item key="status">available</item>
</dt_assoc>
</item>
<item key="3">
<dt_assoc>
<item key="domain">ashok.biz</item>
<item key="status">available</item>
</dt_assoc>
</item>
<item key="4">
<dt_assoc>
<item key="status">available</item>
<item key="domain">ashok.me</item>
</dt_assoc>
</item>
<item key="5">
<dt_assoc>
<item key="domain">ashok.website</item>
<item key="status">available</item>
<item key="has_claim">0</item>
</dt_assoc>
</item>
</dt_array>
</item>
<item key="response_text">Command completed successfully.</item>
<item key="response_code">200</item>
<item key="is_success">1</item>
<item key="count">6</item>
</dt_assoc>
</item>
<item key="personal_names">
<dt_assoc>
<item key="response_code"></item>
</dt_assoc>
</item>
</dt_assoc>
</item>
<item key="request_response_time">8.066</item>
<item key="protocol">XCP</item>
<item key="is_search_completed">1</item>
<item key="is_success">1</item>
<item key="action">REPLY</item>
</dt_assoc>
</data_block>
</body>
</OPS_envelope>
我把它转换成
jsonXml = JSON.stringify(result.OPS_envelope.body.data_block.dt_assoc.item);console.dir (jsonXml);
'["Command completed successfully",{"dt_assoc":{"item":[{"dt_assoc":{"item":[{"dt_array":{"item":[{"dt_assoc":{"item":["anjali.com","taken"]}},{"dt_assoc":{"item":["available","anjali.net"]}},{"dt_assoc":{"item":["anjali.org","available"]}},{"dt_assoc":{"item":["available","anjali.biz"]}},{"dt_assoc":{"item":["available","anjali.me"]}},{"dt_assoc":{"item":["anjali.website","available","0"]}}]}},"Command completed successfully.","200","1","6"]}},{"dt_assoc":{"item":""}}]}},"200","REPLY","1","1","XCP","8.067"]'
和
var json = json .parse(jsonXml);
console.log (json);
[ 'Command completed successfully',
{ dt_assoc: { item: [Object] } },
'200',
'REPLY',
'1',
'1',
'XCP',
'8.067' ]
我想检索域名,他们采取/可用的json输出作为javascript数组,但我无法做到这一点。
或者您知道检索domain_name和status的任何其他方法。
请帮帮我。
有很多不同的方法可以做到这一点。
你可以使用DOMParser,你可以在w3schools和mdn上找到这个。
你可以使用JQuery或xml2json之类的库,也可以使用npm包中的任何一个。
自己动手,这里有一个关于它的博客
相关文章:
- 原始javascript将json对象中的项目打印到列表中的屏幕上
- 余烬原始 JSON 转换不起作用,但例外
- JSON 日期,以服务器的时区显示原始日期
- GWT JavaScriptObject:获取原始 json 字符串
- 解析的 JSON 不等于原始数据
- WebAPI 控制器在通过 jQuery 调用时重定向到原始 JSON 视图
- 呈现来自动态填充的Json对象的原始HTML数据
- 保护原始JSON数据不被复制
- 将JSON字符串(Pretified)转换回原始字符串(包含所有转义符)
- PhantomJS中解析JSON平面文件的问题(请不要jquery,原始javascript)
- 检索原始日期值转换JSON.stringify
- 将原始数据RRD为JSON
- 将原始XML解析为JSON
- 将数据从原始查询转换为JSON
- 在JSON对象中存储和发送原始文件数据
- lodash平面化JSON并显示原始路径
- 将num或布尔类型json对象从字符串类型转换为其原始类型
- JSON原始SQL查询的转储,返回空字典
- 在与原始模式相同的级别上重用远程JSON模式中的属性
- 如何在不使用AJAX的情况下发布原始JSON数据