का उपयोग कर फ़ायरफ़ॉक्स एडन में एक्सएमएल स्ट्रिंग का विश्लेषण कैसे करें मैं एक एफएफ एडऑन बनाने की कोशिश कर रहा हूं जो किसी वेबसाइट से कुछ एक्सएमएल डेटा लाता है। लेकिन मुझे अपने उत्तरदायित्व का विश्लेषण करने का कोई तरीका नहीं मिल रहा है। सबसे पहले मैं DOMParser थे, लेकिन मैं इस त्रुटि मिलती है:ऐड-ऑन एसडीके
ReferenceError: DOMParser is not defined.
किसी XMLHttpRequest उपयोग करने के लिए सुझाव दिया है क्योंकि पार्स स्वचालित रूप से किया जाता है, लेकिन फिर मैं यह अन्य त्रुटि मिलती है:
Error: An exception occurred. Traceback (most recent call last):
File "resource://jid0-a23vmnhgidl8wlymvolsst4ca98-at-jetpack/api-utils/lib/cuddlefish.js", line 208, in require let module, manifest = this.manifest[base], requirer = this.modules[base]; TypeError: this.manifest is undefined
मैं वास्तव में नहीं जानता कि और क्या करना है। मुझे ध्यान रखना चाहिए कि मैं इसे प्राप्त करने के लिए AddOn बिल्डर का उपयोग कर रहा हूं।
उस कोड के नीचे जो काम नहीं करता है।
विकल्प 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);
}
}
});
};
+1 अपने उपयोगकर्ताओं के लिए कृपया किसी भी प्रकार की सिंक्रोनस नेटवर्क पहुंच से बचें! – canuckistani
@ कनककिस्तान: अब अगर केवल 'xhr' उचित' अधिभार 'और' वनेंट' गुणों को कार्यान्वित किया गया है;) वेब डेवलपर्स का उपयोग 'पहले से ही बदलना' के लिए किया जा सकता है लेकिन मैं इसे एक बदसूरत समाधान मानता हूं। –
@Wladimir Palant। डोम्पर्स समाधान बहुत अच्छा काम किया। हालांकि XMLHttpRequest समाधान ने मुझे एक ही त्रुटि संदेश फेंक दिया।मैंने डोमपर्स के साथ आपको जो कुछ भी सिफारिश की थी, उसके समान कुछ करने के लिए समाप्त हुआ: 'var {सीसी, सीआई} = आवश्यकता (" क्रोम "); var अनुरोध = सीसी ["@ mozilla.org/xmlextras/xmlhttprequest;1"]। CreateInstance (Ci.nsIXMLHttpRequest); 'और यह काम किया! धन्यवाद – kriztean