Sollte ich JSON oder AJAX für Antwortdaten verwenden?

7

Warum JSON? Ich habe heute einige Tests durchgeführt, und die Anfragezeit für JSON oder eine normale AJAX-Anfrage war dieselbe. In der "normalen Anfrage" habe ich die vollständigen text + html-Tags zurückgegeben, in der JSON-Anfrage habe ich logischerweise einen "json return type" zurückgegeben und den HTML-Code mit clientseitigem JavaScript erstellt.

Ich verstehe es nicht, warum sind die großen Websites (Google Reader usw.) oder sogar kleine Websites mit JSON? Oder verstehe ich nicht, wann ich JSON benutzen soll?

    
Uffo 17.06.2009, 11:04
quelle

2 Antworten

41

Sie sind vielleicht ein wenig verwirrt.

JSON und AJAX sind keine Entweder-oder-Wahl.

JSON und XML sind eine Wahl.

JSON und AJAX sind verschieden und weitgehend unabhängig voneinander, obwohl AJAX oft JSON verwendet, es kann einfach XML, HTML oder einfachen Text verwenden.

Oder beziehen Sie sich auf das X in AJAX (XML)? Wenn ja, sind die Argumente für JSON grundsätzlich:

  • JSON hat eine geringere Nutzlast als äquivalentes XML. und
  • JSON ist in Javascript einfacher zu handhaben (vergleichen Sie das Auswerten eines JSON-Objekts mit einem XML-Fragment).

Abgesehen davon ist es weitgehend persönliche Präferenz.

    
cletus 17.06.2009, 11:08
quelle
13

JSON ist nur ein Datenaustauschformat. Es beschreibt, auf welche Weise die Daten während der Übertragung dargestellt werden. Sie können Ajax nicht durch JSON ersetzen.

Ajax steht für asynchrones JavaScript und XML, aber wenn Sie JSON verwenden, können Sie sagen, dass Sie AJAJ (Asynchronous JavaScript und JSON) verwenden.

Vielleicht denken Sie an die jQuery-Methoden $.getJSON() und $.get() ?

Der Unterschied ist, dass $.getJSON() automatisch annimmt, dass es sich um JSON-Daten handelt, während $.get() nur die Daten als einfachen Text abruft.

Wenn Sie $.getJSON() verwenden, können Sie auch Daten zwischen Domänen abrufen.

    
alexn 17.06.2009 11:09
quelle

Tags und Links