Ajax означает XMLHttpRequest . Так же, как вам не нужно использовать XML с XHR, вам также не нужно использовать HTTP.
Несмотря на название, XMLHttpRequest
может использоваться для извлечения данных любого типа, не только XML, и поддерживает протоколы, отличные от HTTP (включая file
и ftp
).
Из спецификации W3C XMLHttpRequest (выделение добавлено):
Объект XMLHttpRequest реализует интерфейс, предоставляемый механизмом сценариев, который позволяет сценариям выполнять функции клиента HTTP, такие как отправка данных формы или загрузка данных с сервера. Это ECMAScript HTTP API.
Имя объекта - XMLHttpRequest для совместимости с Интернетом, хотя каждый компонент этого имени может вводить в заблуждение. Во-первых, объект поддерживает любой текстовый формат, включая XML. Во-вторых, его можно использовать для отправки запросов как по HTTP, так и по HTTPS ( некоторые реализации поддерживают протоколы в дополнение к HTTP и HTTPS, но эта функциональность не рассматривается в этой спецификации ). Наконец, он поддерживает «запросы» в широком смысле этого термина, поскольку он относится к HTTP; а именно вся деятельность, связанная с HTTP-запросами или ответами для определенных HTTP-методов.
Доступные протоколы, кроме HTTP и HTTPS, не стандартизированы, поэтому они зависят от конкретной среды 1 , которую вы используете. То есть все совместимые реализации XHR должны поддерживать HTTP и HTTPS, но не требуется для поддержки любых других конкретных протоколов. Это означает, что вы можете обнаружить, что Internet Explorer поддерживает
1 Например, какая версия какого браузера (Safari против Firefox против Chrome против IE против Opera против ...) или какой сервер- сторонняя реализация (V8 против Rhino против ...)