Converts a JSON (JavaScript Object Notation) string data representation into CFML data, such as a CFML structure or array.
The data value in ColdFusion format: a structure, array, query, or simple value.
DeserializeJSON(JSONVar[, strictMapping, useCustomSerializer])
IsJSON, SerializeJSON, cfajaxproxy , Using Ajax Data and Development Features in the Developing ColdFusion Applications, http://www.json.org
ColdFusion 11: Added the attribute, useCustomSerializer.
ColdFusion 8: Added this function
Parameter |
Description |
|---|---|
JSONVar |
A valid JSON string expression. |
strictMapping |
A Boolean value that specifies whether to convert the JSON strictly, as follows:
|
| useCustomSerializer | true/false. Whether to use the customSerializer or not. The default value is true. The custom serializer will always be used for deserialization. If false, the JSON deserialization will be done using the default ColdFusion behavior. |
This function is useful any time a ColdFusion page receives data as JSON strings. It is useful in ColdFusion applications that use Ajax to represent data on the client browser, and lets you consume JSON format data from the client-side Ajax JavaScript. You can also use it on pages that get data from services that supply data as JavaScript function calls with JSON parameters. The DeserializeJSON function converts each JSON data type directly into the equivalent ColdFusion data type, as follows:
The following example parses JSON data and converts the JSON data into a ColdFusion structure.
<cfscript>
record=deserializeJSON(
'{
"firstname": "John",
"lastname": "Smith",
"age": "36",
"address":{
"number":"12345",
"street":"my_street",
"city":"any city"
}
}'
);
writeOutput(record.firstname & " ");
writeOutput(record.lastname & " ");
writeOutput(record.address.number & " ");
writeOutput(record.address.street & " ");
</cfscript>
Expected output:
John Smith 12345 my_street
Sign in to your account