xml - 如何在 Angular 4 中将 xml 转换为 json?

标签 xml angular

我是 Angular 4 的初学者,我没有足够的知识如何处理 XML 到 JSON 以及如何在 Angular 4 中调用服务,请提出建议

最佳答案

基于库http://goessner.net/download/prj/jsonxml/ ,我实现了一个示例来接收 XML 数据并将它们解析为 Angular4 应用程序:

var headers = new Headers();
(...)
headers.append('Accept', 'application/xml');

return this.http.get('https://angular2.apispark.net/v1/companies/', {
  headers: headers
}).map(res => JSON.parse(xml2json(res.text(),'  ')));

为了能够使用该库,您需要首先解析 XML 字符串:

var parseXml;

if (typeof window.DOMParser != "undefined") {
  parseXml = function(xmlStr) {
    return ( new window.DOMParser() ).parseFromString(xmlStr, "text/xml");
  };
} else if (typeof window.ActiveXObject != "undefined" &&
   new window.ActiveXObject("Microsoft.XMLDOM")) {
    parseXml = function(xmlStr) {
      var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.async = "false";
      xmlDoc.loadXML(xmlStr);
      return xmlDoc;
  };
} else {
  throw new Error("No XML parser found");
}

查看这个plunkr:https://plnkr.co/edit/dj63ASQAgrNcLLlwyAum?p=preview .

关于xml - 如何在 Angular 4 中将 xml 转换为 json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45706419/

相关文章:

java - LinearLayout 中不可点击的按钮

android - 如何使 android Activity 适应所有尺寸的移动显示器?

angular - 复制对象的值而不绑定(bind)它们

带有 CD 类的 angular2 变化检测

angular - 当静态 forRoot 有参数时,FeatureModule 在 AOT 构建期间失败

java - 通过 xslt 和 xsl 生成 pdf 时根据 pdf 的页码打印一些文本 :fo

php - 如何检查 xml 远程 url 是否存在,如果不存在则使用缓存的本地文件

javascript - TypeError : params[item]. split 不是函数

java - 使用 NetBeans 对 Selenium 进行跨浏览器测试

angular - Angular 应用程序中的 PrimeNG p-dialog modal block 背景和对话窗口本身