das laden der JSON-in AS3
Ich versuche zu laden, JSON, mein flash-Programm. JSON ist im gleichen Verzeichnis wie die fla-und swf-Datei. Ich bin in der Lage, laden Sie die JSON in einen string-variable, und wenn ich trace sehe ich die JSON. Das JSON-format gültig ist, überprüft am: http://www.jsonlint.org/.
Das problem ist, wenn ich versuchen zu entziffern JSON auf ein Objekt.
Ich bekomme die folgende Fehlermeldung: "RangeError: Fehler #1506: Der angegebene Bereich ist ungültig."
Ich bin mit dem JSON-lib von ac3corelib zum decodieren der Zeichenfolge.
Hier ist der gesamte code:
import com.rational.serialization.json.JSON;
import flash.display.Loader;
import flash.external.ExternalInterface;
import flash.events.IOErrorEvent;
import flash.net.URLLoader;
var _jsonLoader:URLLoader = new URLLoader();
_jsonLoader.load(new URLRequest("JSON.json"));
_jsonLoader.addEventListener(Event.COMPLETE, processJson);
_jsonLoader.addEventListener(IOErrorEvent.IO_ERROR, _notify);
function _notify(e:IOErrorEvent):void
{
trace("error");
e.target.removeEventListener(IOErrorEvent.IO_ERROR, _notify);
}
function processJson(e:Event):void
{
var stringJson:String;
var temp:Object;
stringJson = String (e.target.data);
trace(stringJson);
temp = JSON.decode(stringJson);
trace(temp)
}
Bitte informieren Sie sich auf warum bekomme ich diesen Fehler
Danke an Euch alle,
Moshe S,
- Möglicherweise möchten Sie den JSON-code als auch - it ' s a decoding error.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ohne zu sehen, Ihre JSON-code, es ist schwer zu sagen. Aber, welche version von Flash verwendest du? Beginnend mit Flash 11 und Air 3.0 (und Flex 4.6), erhalten Sie native JSON-Unterstützung.
Sehen, wenn die native parser Ihnen verschiedene Informationen:
trace(e.error.getStackTrace())
trace(stringJson)
? Die JSON du oben gepostet enthält ein <br /> - tag, bevor das JSON-Objekt, die nicht analysiert werden können.