Windows 10 reached EOS (end of support) on October 14, 2025. For more information, see this article.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

XMLHttpRequest is undefined

  • 2 replies
  • 3 have this problem
  • 16 views
  • Last reply by AMArostegui

more options

I'm writing a bootstrap Add-On for Thunderbird 24.3.0 on a Ubuntu 13.10 computer.

When trying to execute the following code snippet (taken for Mozilla Developer Network)

    var req = new XMLHttpRequest();
    req.open('GET', 'http://www.mozilla.org/', false); 
    req.send(null);
    if(req.status == 200)
        dump(req.responseText);

I get "ReferenceError: XMLHttpRequest is not defined" on the Error Console when trying to create the object.

This problem looks very similar to Firefox's:

https://support.mozilla.org/en-US/questions/987100

I'm writing a bootstrap Add-On for Thunderbird 24.3.0 on a Ubuntu 13.10 computer. When trying to execute the following code snippet (taken for Mozilla Developer Network) var req = new XMLHttpRequest(); req.open('GET', 'http://www.mozilla.org/', false); req.send(null); if(req.status == 200) dump(req.responseText); I get "ReferenceError: XMLHttpRequest is not defined" on the Error Console when trying to create the object. This problem looks very similar to Firefox's: https://support.mozilla.org/en-US/questions/987100

Chosen solution

Hmm, could it be some change in the SDK?

It might be worth checking on this forum: http://forums.addons.mozilla.org/

Read this answer in context 👍 2

All Replies (2)

more options

Chosen Solution

Hmm, could it be some change in the SDK?

It might be worth checking on this forum: http://forums.addons.mozilla.org/

more options

I think I found out the answer:

You cannot instantiate that way within a Javascript module. Should use

var req = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"]

                   .createInstance(Components.interfaces.nsIXMLHttpRequest);

instead.

Anyway, thanks for letting me know about the forum. Looks helpful.