Как работает этот запрос ajax для Cross Domain?

Я рассматриваю этот вопрос и в нем ссылка на http://hacks.mozilla.org/2011/03/the-shortest-image-uploader-ever/, который имеет следующий код:

var fd = new FormData();
fd.append("image", file); // Append the file
fd.append("key", "6528448c258cff474ca9701c5bab6927");
// Get your own key: http://api.imgur.com/

// Create the XHR (Cross-Domain XHR FTW!!!)
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://api.imgur.com/2/upload.json"); // Boooom!
xhr.onload = function() {
    // Big win!
    // The URL of the image is:
    JSON.parse(xhr.responseText).upload.links.imgur_page;
 }
 // Ok, I don't handle the errors. An exercice for the reader.
 // And now, we send the formdata
 xhr.send(fd);

Как этот запрос перекрестного домена работает? Я думал, что, как правило, существуют ограничения безопасности, которые мешают людям делать именно это.

Ответ 2

Imgur реализует совместное использование ресурсов Cross-Origin (CORS).

Стандарт CORS работает, добавляя новые HTTP-заголовки, которые позволяют серверам для обслуживания ресурсов до разрешенных доменов происхождения. Браузеры поддерживают эти заголовки и обеспечивать соблюдение установленных ими ограничений. Кроме того, для Методы HTTP-запроса, которые могут вызывать побочные эффекты для пользовательских данных (в в частности, для HTTP-методов, отличных от GET, или для использования POST с определенные типы MIME), спецификация требует, чтобы браузеры "предварять" запрос, запрашивая поддерживаемые методы с сервера с заголовком запроса HTTP OPTIONS, а затем после утверждения сервер, отправляющий фактический запрос с фактическим HTTP-запросом метод. Серверы также могут уведомлять клиентов о том, являются ли "учетные данные" (включая файлы cookie и HTTP-аутентификацию) должны быть отправлены с запросы.

Подробнее см. http://hacks.mozilla.org/2009/07/cross-site-xmlhttprequest-with-cors/.