Когда использовать Ajax против Json для событий Javascript? - PullRequest
25 голосов
/ 02 июня 2009

Я не очень знаком с Ajax, но продолжаю слышать, что Json упоминается как некий конкурирующий вариант. Есть ли правило, когда следует использовать одно против другого?

Я бы хотел обработать события Javascript в моем приложении и динамически обновлять интерфейс из приложения, но я не уверен, нужно ли мне для этого использовать Ajax или Json.

Ответы [ 10 ]

32 голосов
/ 02 июня 2009

Ajax и JSON - это очень разные вещи.

С Ajax (программирование) :

Ajax, иногда пишется как AJAX (сокращение для асинхронного JavaScript и XML), это группа взаимосвязанных методы веб-разработки, используемые на на стороне клиента для создания интерактивной сети приложения или богатый интернет Приложения. С Ajax, веб приложения могут извлекать данные из сервер асинхронно в фон, не мешая дисплей и поведение существующая страница Использование Ajax привело на увеличение интерактивного анимация на веб-страницах и лучшее качество веб-сервисов, спасибо в асинхронный режим. Данные извлекается с использованием XMLHttpRequest объект. Несмотря на название, использование JavaScript и XML на самом деле не требуется, и при этом запросы не должны быть асинхронным.

С Представляем JSON :

JSON (JavaScript Object Notation) - это легкий формат обмена данными. Людям легко читать и писать. Машины легко разбираются и генерируются. Он основан на подмножестве языка программирования JavaScript, стандарт ECMA-262, 3-е издание - декабрь 1999 года. JSON - это текстовый формат, полностью независимый от языка, но использующий соглашения, знакомые программистам языков семейства C, включая C , C ++, C #, Java, JavaScript, Perl, Python и многие другие. Эти свойства делают JSON идеальным языком обмена данными.

21 голосов
/ 02 июня 2009

Вот немного JSON:

{ "taco" : "awesome", "burrito": "less awesome", "fishTaco": "1000" }

В этом случае выглядит как массив.

И вы можете использовать AJAX, чтобы получить JSON. Я использую его, чтобы часто возвращать данные таблицы. Возможно, вы уже использовали JSON-подобные данные в своем javascript, но не осознали этого.

Я предпочитаю запрашивать данные JSON, а не XML или HTML. Мне легче работать с XML и более гибко, чем с HTML.

13 голосов
/ 02 июня 2009

JSON - не конкурирующая технология с AJAX, это просто формат данных.

Где вы можете услышать конкуренцию между XML и JSON, JSON обладает преимуществом, как правило, легче и уже в нативном javascript, а XML обладает преимуществом переносимости и наборов инструментов.


Представляем JSON

9 голосов
/ 02 июня 2009

Как утверждают некоторые, это совершенно разные вещи. AJAX - это метод использования JavaScript для инициирования HTTP-запросов на получение данных. Эти данные могут иметь любой формат, но чаще всего это XML, HTML и, да, JSON.

Итак, как уже упоминалось, JSON - это формат данных, очень похожий на XML или CSV, только с другим набором правил форматирования.

7 голосов
/ 02 июня 2009

Json - это не что иное, как формат данных, передаваемых вами с помощью Ajax-способа общения с сервером.

Некоторые передают данные в виде xml, другие просто текст, другие используют Json.

Подробнее о JSON в Википедии: http://en.wikipedia.org/wiki/Json

4 голосов
/ 02 июня 2009

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

«A» в Ajax часто означает «XML», и многие сайты, использующие Ajax, используют XML в качестве формата данных, возвращаемых сервером в ответ на такие запросы.

JSON (http://json.org) - это легкий формат обмена данными, основанный на нотации объектов Javascript. Таким образом, его легко анализировать в Javascript. Он также намного менее многословен и повторен, чем XML.

3 голосов
/ 08 апреля 2010

Я думаю, вы можете говорить об AJAX против JSONP

http://en.wikipedia.org/wiki/Json#JSONP

Если это так, то единственным преимуществом использования JSONP является то, что вы можете обойти изолированную программную среду между сайтами (хотя, возможно, создавая новые угрозы безопасности)

2 голосов
/ 08 декабря 2018

AJAX используется для получения данных с сервера, тогда как JSON - это просто формат данных, который может использоваться для отправки данных на сервер.

1 голос
/ 24 октября 2014

Я думал, что приведу это сравнение из своей лекции

AJAX (Asynchronous JavaScript + XML) incorporates several technologies:
  • Презентация на основе стандартов с использованием XHTML и CSS;
  • Динамическое отображение и взаимодействие с использованием объектной модели документа (DOM);
  • Обмен данными и манипулирование с использованием XML и XSLT;
  • Асинхронный поиск данных с использованием XMLHttpRequest;
  • JavaScript связывает все вместе.

JSON, сокращение от JavaScript Object Notation - это легкий формат обмена данными. Его основное приложение - программирование веб-приложений AJAX, где оно служит альтернативой использованию формата XML для обмена данными между клиентом и сервером.

0 голосов
/ 07 июля 2017

Ответы выше верны, но если вы новичок в использовании веб-технологий, все, что вам нужно знать, это просто что Ajax является подмножеством JavaScript. Это технология, средство для отправки только части данных веб-страницы обратно на сервер для обработки и получить ответ обратно, пока пользователь взаимодействует с другими частями страницы. Таким образом, Взаимодействие со страницей непротиворечиво и, казалось бы, с точки зрения пользователя. Теперь JSON с другой стороны как вы можете отформатировать данные (аналогично XML), которые вы отправляете обратно на сервер и получаете обратно. и он используется в основном с Ajax. Он был разработан и используется в основном потому что он легкий и удобочитаемый, что делает его более эффективным и удобным для пользователя. Надеюсь, это немного поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...