【问题标题】:Something like AJAX in Flash?Flash 中的 AJAX 之类的东西?
【发布时间】:2010-04-14 22:17:05
【问题描述】:

我们如何在 Flash 中以异步方式从服务器获取数据?我在 actionscript 中寻找类似 XHR 的东西。

【问题讨论】:

  • 您能否指出一个示例,其中加载器用于从服务器获取类似 JSON 的数据,然后像数组/对象一样使用?此外,URL 是否可以指向 PHP 文件?
  • 是的,该 URL 可以指向一个 php 文件。 heaveninteractive.com/weblog/2008/03/17/… 如果你用谷歌搜索的话,还有更多的例子。你也可以自己写一个 JSON 解析器,或者在 google 上找一个。编辑:看起来 Les 已经发布了您需要的内容

标签: ajax flash actionscript


【解决方案1】:

如果您使用URLLoader class,您可以从服务器端脚本请求数据。

我个人使用 JSON 在服务器和闪存之间进行通信(如果您想从 javascript 调用相同的脚本,这很方便)。有一个很棒的库可以在 flash 中解码/编码 JSON 字符串:http://code.google.com/p/as3corelib/

package {
    import flash.events.Event;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import com.adobe.serialization.json.*;

    class Test {
        private var loader:URLLoader;

        public function Test() {
            var request:URLRequest = new URLRequest("/api/myscript.py");
            loader = new URLLoader();
            loader.addEventListener(Event.COMPLETE, onLoadData);

            try {
                loader.load(request);
            }catch (error:SecurityError) {
                trace("security error");
            }

        }

        private function onLoadData(e:Event) {
            var obj:Object = JSON.decode(e.target.data);
        }

    }

}

【讨论】:

    【解决方案2】:

    有很多方法。您可以向服务器发送 HTTP 请求并设置回调。您甚至可以使用直接套接字连接(至少在 Flex 中)。

    【讨论】:

    • 你能告诉我一个使用 HTTP 请求/回调的例子吗?我们如何使用返回的数据?可以返回 JSON 之类的东西,我们可以直接将其用作对象/数组吗?
    猜你喜欢
    • 2015-07-05
    • 2012-05-19
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多