【发布时间】:2012-02-28 14:31:57
【问题描述】:
我正在尝试创建一个 FF 插件,它可以从网站带来一些 XML 数据。但我找不到解析我的响应的方法。首先我使用了 DOMParser 但我得到了这个错误:
ReferenceError: DOMParser 未定义。
有人建议使用 XMLHttpRequest,因为解析是自动完成的,但是我得到了另一个错误:
错误:发生异常。回溯(最近一次通话最后一次):
文件 “资源://jid0-a23vmnhgidl8wlymvolsst4ca98-at-jetpack/api-utils/lib/cuddlefish.js”, 第 208 行,在要求中 让模块,清单 = this.manifest[base],requirer = this.modules[base];类型错误:this.manifest 未定义
我真的不知道还能做什么。我必须注意,我正在使用 AddOn Builder 来实现这一点。
下面的代码似乎不起作用。
选项 1:
exports.main = function() {
require("widget").Widget({
id: "widgetID1",
label: "My Mozilla Widget",
contentURL: "http://www.mozilla.org/favicon.ico",
onClick: function(event) {
var Request = require("request").Request;
var goblecontent = Request({
url: "http://www.myexperiment.org/search.xml?query=goble",
onComplete: function (response) {
var parser = new DOMParser();
var xml = parser.parseFromString(response.text, "application/xml");
var packs = xml.getElementsByTagName("packs");
console.log(packs);
}
});
goblecontent.get();
}
});
};
选项2:
exports.main = function() {
require("widget").Widget({
id: "widgetID1",
label: "My Mozilla Widget",
contentURL: "http://www.mozilla.org/favicon.ico",
onClick: function(event) {
var request = new require("xhr").XMLHttpRequest();
request.open("GET", "http://www.myexperiment.org/search.xml?query=goble", false);
request.send(null);
if (request.status === 200) {
console.log(request.responseText);
}
}
});
};
【问题讨论】:
标签: firefox-addon firefox-addon-sdk domparser