Doing XHR CORS with IE 8 and 9 is infuriating. At first you're tempted to think, ok I can just use XDomainRequest.
Well, XDomainRequest is extremely limited. You can only send text/plain content-types (no JSON). You can't specify custom request headers and the source page and server must be using the same scheme. Basically, XHR CORS on IE 8 and 9 are essentially not possible.