2012-04-11 23 views
6

Quello che voglio fare è ottenere una richiesta di questo URL: http://api.beatport.com/catalog/3/most-popular, che dovrebbe restituire alcuni JSON e quindi analizzare alcune informazioni da esso.Ottieni e analizza JSON in ActionScript

Come faccio a fare questo in Actionscript 3? Sono più interessato a capire come ottenere i dati da alimentare a un parser JSON piuttosto che analizzare il JSON, dal momento che sembrano esserci molte domande sull'analisi di JSON. La ragione per cui voglio farlo in AS3 è che ho impostato una visualizzazione flash 3D e voglio ottenere questi dati, analizzare i bit rilevanti e quindi visualizzare i bit analizzati nella visualizzazione.

Sono aperto a qualsiasi altro modo di fare ciò che può essere facilmente integrato con Flash oltre a AS3 se esiste un modo più semplice per farlo in un'altra lingua.

risposta

12
  1. Aggiungere il corelib.swc al percorso della libreria.

  2. importare la libreria JSON: import com.adobe.serialization.json.JSON;

  3. chiamare il servizio con il codice di qualcosa di simile:

    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. analizzare i risultati con JSON.decode(results).

as3corelib viene mantenuto qui: https://github.com/mikechambers/as3corelib#readme.

+0

In realtà la mia domanda principale era esattamente come faccio ad ottenere il JSON modo che io possa analizzarlo. – Saliceran

+1

Passaggio n. 3 aggiornato per mostrare come ottenere JSON da un servizio. –

+0

Una volta che il JSON è in quell'array, come faccio a ottenere il testo che mi serve. Ho solo bisogno di pezzi di dati specifici da esso. Contiene informazioni su 10 diverse canzoni e per ogni canzone voglio il nome della canzone, l'artista, il genere e l'etichetta discografica. Non ho mai lavorato con JSON o Actionscript. – Saliceran

3

credo che il as3corelib ha un JSON serializer e deserializer

È possibile utilizzare quelli invece di re-inventare la ruota e la scrittura di analisi logica di nuovo.

Problemi correlati