XMLHttpRequests (XHR) are used for lots of things these days. When running a background XHR, however, you might experience some common issues like authentication or bad SSL certificate dialogs popping up. Another problem was starting an XHR, then closing the window – the XHR is closed. To help get around these inconveniences, Manish Singh (of Flock) adding support for a background mode (bug 383430). The details:
- Do not attach to a window’s load group, so requests aren’t cancelled if the window closes (often the window isn’t really associated with the request anyway)
- Do not get an nsIAuthPrompt by default, since we don’t want authentication dialogs to pop up randomly.
- Provide an nsIBadCertListener implementation, again to prevent bad certificate dialogs to pop up randomly.
var req = new XMLHttpRequest(); req.mozBackgroundRequest = true; req.open("GET", someURI); req.send(null);
The magic is handled by mozBackgroundRequest
and it’s only available to chrome, not for web content.
Why are “don’t prompt when there are problems” and “don’t go away if the window is closed” controlled by the same property?
Fantastic! Recently I encountered this problem and don’t know how to do with the certification’s popup.
Thanks Mark!
I agree with Jesse – I can think of a situation where I’d like the request to proceed if the window is closed, but still need authentication dialogs to pop up if required. I guess this is hard if authentication dialogs are attached to windows…