2012-04-11 7 views
6

私がやりたいことは、このURLへのリクエストを作成することです:http://api.beatport.com/catalog/3/most-popularは、いくつかのJSONを返してから、そこから特定の情報を解析する必要があります。ActionscriptでJSONを取得して解析する

私はこれをActionscript 3でどうやってやりますか? JSONを解析するのではなく、JSONを解析するのではなく、JSONパーサにデータを渡す方法を理解することにもっと関心があります。私がAS3でこれをしたいのは、3Dフラッシュの視覚化をセットアップして、このデータを取得し、関連するビットを解析し、視覚化に解析されたビットを表示したいのです。

これは、他の言語で簡単に実行できる方法があれば、AS3のほかに簡単にFlashと統合できる他の方法にも開いています。

答えて

12
  1. ライブラリパスにcorelib.swcを追加します。

  2. インポートJSONライブラリ:import com.adobe.serialization.json.JSON;

  3. は、このようなコードの何かをあなたのサービスを呼び出します。

    var request:URLRequest=new URLRequest(); 
    request.url=YOUR_ENDPOINT 
    request.requestHeaders=[new URLRequestHeader("Content-Type", "application/json")]; 
    request.method=URLRequestMethod.GET; 
    var loader:URLLoader=new URLLoader(); 
    loader.addEventListener(Event.COMPLETE, receive); 
    loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, notAllowed); 
    loader.addEventListener(IOErrorEvent.IO_ERROR, notFound); 
    loader.load(request); 
    
    protected function receive(event:Event):void 
    { 
        var myResults:Array=JSON.decode(event.target.data); 
    } 
    
  4. JSON.decode(results)で結果を解析します。

as3corelibはここに維持されます:https://github.com/mikechambers/as3corelib#readme

+0

を実際に私のメインの質問は、私はそれを解析できるように、私はJSONを得るのですかどのように正確だったあなたも何かをインポートする必要がいけないので、それだけで行う、トップレベルのオブジェクトです。 – Saliceran

+1

ステップ#3を更新して、サービスからJSONを取得する方法を示しました。 –

+0

JSONがその配列に入ったら、必要なテキストを手に入れるにはどうすればいいですか?私はそれから特定のデータだけを必要とします。それは10種類の曲についての情報を保持し、曲ごとに、曲の名前、アーティスト、ジャンル、レコードレーベルが必要です。私はJSONやActionscriptを使ったことがありません。 – Saliceran

3

私はas3corelibがあなたの代わりにホイールを再発明し新たに解析するロジックを記述するのそれらを使用することができますJSON serializerdeserializer

を持っていると信じています。