Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to parse JSON (AS3)

How to parse downloaded .json file with a string inside it to a string variable? With as3corelib.swc.

like image 359
Dietrich Avatar asked Oct 11 '12 13:10

Dietrich


2 Answers

And here we go, full-working example from my current project:

protected function loadConfigFromUrl():void
{
    var urlRequest:URLRequest  = new URLRequest(CONFIG_URL);

    var urlLoader:URLLoader = new URLLoader();
    urlLoader.addEventListener(Event.COMPLETE, completeHandler);

    try{
        urlLoader.load(urlRequest);
    } catch (error:Error) {
        trace("Cannot load : " + error.message);
    }
}

private static function completeHandler(event:Event):void {
    var loader:URLLoader = URLLoader(event.target);
    trace("completeHandler: " + loader.data);

    var data:Object = JSON.parse(loader.data);
    trace("The answer is " + data.id+" ; "+data.first_var+" ; "+data.second_var);
    //All fields from JSON are accessible by theit property names here/
}
like image 118
kirushik Avatar answered Nov 10 '22 20:11

kirushik


The function for parsing JSON using as3corelib ( ie not the native JSON class ) is 'decode()'

JSON.decode( inputJson );

If the input json is properly encoded, strings should be available inside the resulting object. You may have trouble parsing strings if they have not been correctly escaped, but that is a problem with the input data.

like image 28
null Avatar answered Nov 10 '22 21:11

null