Ответ заключается в том, что «многие технологии приняты по произвольным историческим или социально-политическим причинам, а не по техническим причинам». Лучшее решение для данной проблемы не всегда становится доминирующей технологией. (На самом деле, это редко бывает.)
В 2012 году, когда HTTP-серверы использовались для создания интерактивных приложений наравне с настольными приложениями, сравнение между HTTP и X интересно. Оглядываясь назад, X, вероятно, является лучшей технологией для разработки многофункциональных интерактивных сетевых приложений. Приложения, подобные интерактивным рабочим столам, плохо сопоставляются с технологией без учета состояния, ориентированной на документы, такой как HTTP, и это несоответствие исторически приводило к всевозможным обходным путям (хаки) для создания состояния, таким как файлы cookie, сессии и т. Д.
Но первоначальная цель HTTP не заключалась в разработке приложений с поддержкой состояния рабочего стола. Это было для извлечения документов и отображения информации - информации, которая может ссылаться на другие документы, которые также могут быть отображены мгновенно. Идея связанного сборника документов восходит к 1960-м годам с « Проектом Ксанаду » Теодора Нельсона . Предполагалось, что Интернет представляет собой реализацию гипертекстовой концепции Нельсона , которая была попыткой компьютеризировать печатную страницу - например, энциклопедию или газету - позволяя пользователю мгновенно «перепрыгивать» из одной статьи в другую одним щелчком мыши.
Многие итерации этой идеи приходили и уходили, такие как Apple Hypercard , которая реализовала концепцию гипертекста / гиперссылок, но никогда не использовалась в сетях. Всемирная паутина была сетевой реализацией концепции гипертекста в CERN, и она, вероятно, взорвалась, потому что Тим Бернерс-Ли бесплатно выпустил свою библиотеку кодов браузера, позволяя другим экспериментировать с ней. В конечном итоге это привело к появлению браузера Mosaic от Marc Andreesen, предшественника Netscape. И остальное уже история.
Но ... как и во многих технологиях, стали появляться новые возможности, о которых разработчики HTTP или гипертекста не особо задумывались. Сеть стала коммерциализированной, и люди начали разрабатывать веб-сайты, которые демонстрировали бы интерактивную интерактивность, такую как корзины для покупок и логины. Становилось все более и более очевидным, что HTTP-структура без сохранения состояния и документа не очень хорошо подходила для настольных приложений. Но в тот момент было слишком поздно. Все уже использовали HTTP. Итак, сегодня мы с различными хакерскими AJAX-приложениями, которые стараются изо всех сил притвориться, что они являются настольными приложениями.