Come convertire ColdFusion oggetti a JSON

November 22

La funzione di conversione SerializeJSON ColdFusion converte i dati ColdFusion in un JavaScript Object Notation (JSON) rappresentazione dei dati. La conversione restituisce una stringa contenente il valore JSON. La funzione SerializeJSON si sono resi disponibili in Adobe ColdFusion 8.0 ed esiste in tutte le edizioni successive. Padroneggiare la funzione SerializeJSON aiuterà lo sviluppatore di integrare il quadro lato client ExtJS con le risposte ColdFusion JSON. Imparare le basi della formattazione di oggetti JSON Row-based aiuterà con l'integrazione con PHP, Java e altri linguaggi.

istruzione

1 Creare un ambiente di alimentazione pulito. Se si inizia da zero, aggiungere le seguenti due righe alla parte superiore del codice:

Per eliminare lo spazio bianco:

<Cfprocessingdirective suppresswhitespace = "yes">

Per interrompere il debug:

<Cfsetting showdebugoutput = "no">

Creare il feed come una funzione JavaScript:

<Tipo cfcontent = "application / x-javascript">

2 Creare la query. Una molto semplice query cliente può essere simile al seguente:

<Cfscript>
customerQuery = QueryNew ( "Nome, Cognome, CustomerCity");
QueryAddRow (customerQuery, 2);
customerSales = StructNew ();
customerSales.High = 1000;
customerSales.Low = 1;
customerSales.Membership = "Sì";
customerArray = ArrayNew (1);
for (i = 1; i <= 4; i ++) customerArray [1] = customerSales;
querySetCell (customerQuery, "Nome", "Todd", 1);
querySetCell (customerQuery, "Cognome", "Walker", 1);
querySetCell (customerQuery, "CustomerCity", "Tulsa", 1);
querySetCell (customerQuery, "Nome", "Andrea", 2);
querySetCell (customerQuery, "Cognome", "Hanson", 2);
querySetCell (customerQuery, "CustomerCity", "Seattle", 2);
</ Cfscript>
</ Cfprocessingdirective>

3 Aggiungere il codice che converte la query ColdFusion in JSON. Il codice aggiunto viene inserito dopo l'ultima istruzione querySetCell. Aggiungere le seguenti righe:

convJSON = SerializeJSON (customerQuery);
writeOutput ( "onLoad (& convJSON &);

4 Verificare che tutto il codice è stato inserito correttamente. L'intero script dovrebbe apparire come segue:

<Cfprocessingdirective suppresswhitespace = "yes">
<Cfsetting showdebugoutput = "no">
<Tipo cfcontent = "application / x-javascript">
<Cfscript>
customerQuery = QueryNew ( "Nome, Cognome, CustomerCity");
QueryAddRow (customerQuery, 2);
customerSales = StructNew ();
customerSales.High = 1000;
customerSales.Low = 1;
customerSales.Membership = "Sì";
customerArray = ArrayNew (1);
for (i = 1; i <= 4; i ++) customerArray [1] = customerSales;
querySetCell (customerQuery, "Nome", "Todd", 1);
querySetCell (customerQuery, "Cognome", "Walker", 1);
querySetCell (customerQuery, "CustomerCity", "Tulsa", 1);
querySetCell (customerQuery, "Nome", "Andrea", 2);
querySetCell (customerQuery, "Cognome", "Hanson", 2);
querySetCell (customerQuery, "CustomerCity", "Seattle", 2);
convJSON = SerializeJSON (customerQuery);
writeOutput ( "onLoad (& convJSON &);
</ Cfscript>
</ Cfprocessingdirective>

5 Compilare il codice per verificare che funzioni correttamente.