2017-12-21 7 views
1

Ich versuche, die Kairos API für die Gesichtserkennung in meiner Luft App zu verwenden. Nachdem ich das Bild zu senden, kairos gibt die folgende JSON:Wie parsen Sie ein Json-Objekt in Action Script 3?

{"images":[{"transaction":{"status":"failure","topLeftX":106,"topLeftY":126,"gallery_name":"Faces","eyeDistance":42,"height":98,"width":98,"face_id":1,"quality":-1.53973,"message":"No match found"}}],"uploaded_image_url":"https:\/\/kairos-east-id-images.s3.amazonaws.com\/prod\/c6d565457\/recognize\/Faces\/d2b1142f2134232349ewer8acb825c87e909f299ab1_5a234XXXXXX.jpg?X-Amz-Content-Sha246=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=XXXXXXXXXXXXXX-east-1%2Fs3%2XXXX_request&X-Amz-Date=2017122rrtdfg158Z&X-Amz-SignedHeaders=host&X-Amz-Expires=XXXX&X-Amz-Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"} 

ich die Werte von „topLeftX“ zugreifen müssen, „topLeftY“ und „Meldung“ aber egal was ich versuche, es nicht zu funktionieren scheint . Ich habe ungefähr eine Stunde lang gesucht. Ich habe sowohl den nativen JSON-Parser als auch den ascorelib JSON-Parser ausprobiert.

Ich habe versucht, die folgenden:

var rawData:Object = JSON.decode(e.target.data); 
     for (var object:Object in rawData){ 
      trace(object.transaction); 
     } 

ich diesen Fehler:

Property transaction not found on String and there is no default value. 

I mit unterschiedlichen Eigenschaftsnamen versucht, aber ich erhalte die gleiche Störung. Ich habe auch andere Methoden ausprobiert. Wie,

rawData["transaction"][0]["topLeftX"] 

Es funktioniert nicht.

Jede Hilfe wird sehr geschätzt.

Antwort

2

Ich habe keine Dekodierungsfunktion auf JSON. Einfach eine JSON.parse und eine JSON.stringify aber was für dich funktionieren soll ist das.

+0

Vielen Dank. Das funktioniert!! –

+2

json.decode stammt aus der JSON-Klasse in AS3 CoreLib. Es ist seit FP 11 veraltet, als Adobe eine Framework-Level-JSON-Klasse mit den Methoden "parse" und "stryify" veröffentlichte. – Brian

Verwandte Themen