2012-01-11 3 views
5

Является ли JSONP классом AJAX?IS JSONP классифицируется как AJAX?

Я смущен, как я понял, что XHR требуется использовать для асинхронной связи, но когда я смотрю на код JQuery для JSONP он «завернутые в AJAX называют

jQuery AJAX

если JSONP не классифицируется как AJAX, то почему jQuery связал его как функцию AJAX, или я что-то пропустил здесь?

ответ

7

Если вы строго скажете, что AJAX означает «асинхронная связь между JavaScript и сервером с использованием формата XML», то только несколько методов под названием «Ajax» сегодня будет соответствовать этому определению, поскольку даже многие «XML-HTTP-запросы» не переносят данные XML.

Таким образом, метод JSONP является лишь одним из известных методов асинхронной связи, и jQuery хотел объединить все их в одну функцию - названную с наиболее распространенным термином «ajax».

Однако термин «ajax» тесно связан с интерфейсом XMLHTTPRequest, который ограничен политикой того же происхождения. Хотя это не относится к JSONP, в котором используются элементы <script>, JSONP ограничивается запросами GET и нуждается в специальной серверной инфраструктуре.

+0

спасибо за ответ, делает вещи более четкие обычно являются JSONP решения рассматриваются в качестве решения JSONP или решений AJAX-JSONP на подобной ноте, если XHR возвращает HTML, то, строго говоря, это не XHR, правильно ? –

Смежные вопросы