在Dojo中解析ATOM提要?

zkure5ic  于 2022-12-16  发布在  Dojo
关注(0)|答案(2)|浏览(162)

我正在尝试解析一个ATOM提要并显示所需的相关部分,在做了一些搜索之后,我在Dojo中找不到这样做的方法,因此我编写了以下实现来暂时应付(var xml包含Atom提要):

var names = this.getArray(xml.getElementsByTagName("name"));
var contents = this.getArray(xml.getElementsByTagName("content"));
var emails = this.getArray(xml.getElementsByTagName("email"));
var pubTimes = this.getArray(xml.getElementsByTagName("published"));

getArray: function(data) {
    var theArray = [];
    dojo.forEach(data, function (entry) {
        theArray.push(entry);
    });
    return theArray;
}

然后使用这些数组打印出ATOM提要的格式化版本。我是Javascript和Dojo的新手,我确信有更好/更简单的方法来解析XML。
先谢了。

gcuhipw9

gcuhipw92#

  • 我知道这是一个老职位,但我想我会添加一个答案,以防有人偶然发现它,因为我刚刚做了。*

当我有一个Atom提要时,我会执行以下操作:

// Build xml feed from a document element (in this case `xml`)
var feed = new dojox.atom.io.model.Feed();
feed.buildFromDom(xml);

// Convert to json
var jsonString = dojo.toJson(feed, true);
var jsonObj = JSON.parse(jsonString );

然后我可以很容易地使用jsonObj.*key*来获取或设置数据。

相关问题