简体   繁体   中英

JSON get data (swf) to HTML5

So my swf file request an url request (pr2hub.com/get_player_info_2.php?name=NAME) And my swf use this datas to change movieclip's frames, colors.

I converted it to HTML5, but It's not work.

Original SWF is work:

http://tulyita.hu/games/pr2setspreview.html?users=sothal

HTML5 not work:

http://tulyita.hu/games/pr2setspreview.swf.html?users=sothal

The errors:

The ActionScript class JSON is not supported.

The ActionScript method JSON.parse() is not supported.

Can someone help this with me? AS3 Flash Code:

var loadedDataType:String;
var allowedToLoad:Boolean = false;
var pr2loaderInfo:String;
var pr2data:Object;

function loadPR2data():void
{
var urlRequest:URLRequest = new URLRequest("http://pr2hub.com/get_player_info_2.php?name=" + userName);
var urlLoader:URLLoader = new URLLoader();
urlLoader.addEventListener(Event.COMPLETE, completeHandler);
urlLoader.load(urlRequest);
}

function completeHandler(event:Event):void
{
var loader:URLLoader = URLLoader(event.target);
pr2loaderInfo = loader.data;
pr2data = JSON.parse(loader.data);
loadRequest_function();
}

function loadRequest_function():void
{
loadHatFrame = pr2data.hat;
loadHatColor1 = pr2data.hatColor;
loadHatColor2 = pr2data.hatColor2;
loadHeadFrame = pr2data.head;
loadHeadColor1 = pr2data.headColor;
loadHeadColor2 = pr2data.headColor2;
loadBodyFrame = pr2data.body;
loadBodyColor1 = pr2data.bodyColor;
loadBodyColor2 = pr2data.bodyColor2;
loadFeetFrame = pr2data.feet;
loadFeetColor1 = pr2data.feetColor;
loadFeetColor2 = pr2data.feetColor2;
}

You need to import JSON first (add corelib.swc if not yet part of the project):

import com.adobe.serialization.json.JSON;

and then :

pr2data = JSON.decode( value );

You can find corelib here : https://github.com/mikechambers/as3corelib#readme

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM