Статьи

Кросс-сайт Ajax в Firefox 3

Джон Резиг опубликовал хорошее резюме (включая демонстрационный код) о том, как можно реализовать межсайтовые вызовы XMLHttpRequest — функция, которая в настоящее время реализована в бета-версии 2 Firefox 3.

В двух словах, есть два метода, которые вы можете использовать для достижения желаемого результата межсайтового запроса: указание специального заголовка контроля доступа для вашего контента или включение инструкции обработки контроля доступа в ваш XML.

Что особенно интересно, так это код, необходимый для использования этой функции. Например, чтобы запросить HTML-файл из удаленного домена, вы можете сделать следующее (вам, конечно, сначала нужно загрузить Firefox 3 ):

var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if ( xhr.readyState == 4 ) { if ( xhr.status == 200 ) { document.body.innerHTML = "And the winner is... " + xhr.responseText; } else { document.body.innerHTML = "ERROR"; } } }; xhr.open("GET", "http://www.sitepoint.com/example.php", true); xhr.send(null); 

Выглядит знакомо? Помимо включения домена в параметр URL функции open, этот код идентичен стандартным вызовам Ajax, которые вы, вероятно, уже делаете.

Конечно, являются ли межсайтовые запросы Ajax плохой вещью ™ или нет, это спор, который, без сомнения, будет бушевать годами, пока достаточное количество браузеров не поддержит функциональность, чтобы он был действительно полезен. Как только мы достигнем этой точки, я держу пари, что откроется целый мир новых гибридных приложений, приложений и других сервисов (и, да, люди, которые этого не понимают, без сомнения, будут делать с ним глупости, как это было в Ajax). новая жара стала пару лет назад).

Прочтите официальную документацию в Центре разработки Mozilla для получения дополнительной информации (и, возможно, ознакомьтесь с документацией по некоторым другим функциям, которые появятся во время вашего пребывания).