Xml 在ActionScript 3中模拟服务器响应

Xml 在ActionScript 3中模拟服务器响应,xml,actionscript-3,json,configuration-files,Xml,Actionscript 3,Json,Configuration Files,我在ActionScript3中制作了一个客户端应用程序。和一个基于Java的服务器。服务器将以JSON格式发送响应,但尚未完成。所以,我需要在某个文件中模拟来自服务器的硬编码响应。获取某个键的响应 例如: request: http://www.serverscript.com/GET_INFO?a=2&e="hello" response: {some JSON object} 在iPhone中,我们可以使用pList文件。 我可以在这里使用什么以及如何使用?您可以从包含伪JSO

我在ActionScript3中制作了一个客户端应用程序。和一个基于Java的服务器。服务器将以JSON格式发送响应,但尚未完成。所以,我需要在某个文件中模拟来自服务器的硬编码响应。获取某个键的响应

例如:

request: http://www.serverscript.com/GET_INFO?a=2&e="hello"

response: {some JSON object}
在iPhone中,我们可以使用pList文件。

我可以在这里使用什么以及如何使用?

您可以从包含伪JSON的纯文本文件加载:

var file:URLRequest = new URLRequest('dummy.txt');
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE,onTextLoaded);
loader.load(file);

function onTextLoaded(evt:Event):void
{
    //trace the loaded content
    trace(URLLoader(evt.target).data);
    //decode the JSON
    var useableObject:Object = JSON.decode(URLLoader(evt.target).data);
}

您可以从包含伪JSON的纯文本文件加载:

var file:URLRequest = new URLRequest('dummy.txt');
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE,onTextLoaded);
loader.load(file);

function onTextLoaded(evt:Event):void
{
    //trace the loaded content
    trace(URLLoader(evt.target).data);
    //decode the JSON
    var useableObject:Object = JSON.decode(URLLoader(evt.target).data);
}

您确实希望将与服务器之间的通信封装在自己的类中,这样您就可以在服务器准备就绪时将服务器代码重构到它中

    public class ServerGateway extends EventDispatcher
    {
        public static const SERVER_RESPONSE_EVENT:String = "serverResponseEvent";
        public var responseData:String = "";

        public function getInfo():void 
        {
            //load you file here for now but replace with server calls when its done
            var url:String = "your file path";
            var myLoader:URLLoader = new URLLoader();           
            myLoader.addEventListener(Event.COMPLETE, handleServerGetInfo);
            var request:URLRequest = new URLRequest("file.txt");
            myLoader.load(request);         
        }

        private function handleServerGetInfo(event:Event):void 
        {
            // this will need replacing to handle server responses when done
            var myLoader:URLLoader = event.target as URLLoader;
            myLoader.removeEventListener(Event.COMPLETE, handleServerGetInfo);
            responseData = myLoader.data as String;

            dispatchEvent(new Event(SERVER_RESPONSE_EVENT));
        }

    }

您确实希望将与服务器之间的通信封装在自己的类中,这样您就可以在服务器准备就绪时将服务器代码重构到它中

    public class ServerGateway extends EventDispatcher
    {
        public static const SERVER_RESPONSE_EVENT:String = "serverResponseEvent";
        public var responseData:String = "";

        public function getInfo():void 
        {
            //load you file here for now but replace with server calls when its done
            var url:String = "your file path";
            var myLoader:URLLoader = new URLLoader();           
            myLoader.addEventListener(Event.COMPLETE, handleServerGetInfo);
            var request:URLRequest = new URLRequest("file.txt");
            myLoader.load(request);         
        }

        private function handleServerGetInfo(event:Event):void 
        {
            // this will need replacing to handle server responses when done
            var myLoader:URLLoader = event.target as URLLoader;
            myLoader.removeEventListener(Event.COMPLETE, handleServerGetInfo);
            responseData = myLoader.data as String;

            dispatchEvent(new Event(SERVER_RESPONSE_EVENT));
        }

    }

简易解决方案:在计算机上运行服务器:


这样你就不必模拟任何东西。您可以将服务器端代码和客户端代码放在同一台机器上,当您完成上传并完成后,无需在任何地方进行重构。您可以编写一个快速php脚本来输出一个静态json对象,这将在完成后模拟与java服务的连接。

简单解决方案:在您的计算机上运行服务器:

这样你就不必模拟任何东西。您可以将服务器端代码和客户端代码放在同一台机器上,当您完成上传并完成后,无需在任何地方进行重构。您可以编写一个快速的php脚本来输出一个静态json对象,这将在完成后模拟与java服务的连接