0

在浏览器中运行时,我需要一个本地 SWF 来加载本地 XML 文件。SWF 和 XML 本地放置在我的 HD 上的同一目录中,据我所知,这应该可以吗?但是在浏览器中,XML 不会加载 - 输出显示为“开始”,我无法触发任何事件。而当直接从 Animate 或在 Flash 播放器中运行时,它可以工作并且输出显示为“成功”。

package  {  
    import flash.display.MovieClip;
    import flash.errors.IOError;
    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.text.TextField;
    import flash.events.SecurityErrorEvent;
    import flash.events.HTTPStatusEvent;

    public class main extends MovieClip {

        private var output:TextField;

        public function main() {

            output = new TextField();
            output.width = 600;
            output.text = "begin";
            addChild(output);

            var urlLoader:URLLoader = new URLLoader();
            urlLoader.addEventListener(Event.COMPLETE, function(e:Event){
                output.text = "success";
            });
            urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, function(e:Event) {
                output.text = "http status event";
            });
            urlLoader.addEventListener(IOErrorEvent.IO_ERROR, function(e:Event) {
                output.text = "io error";
            });
            urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(e:SecurityErrorEvent) {
                output.text = "security error";
            });
            urlLoader.load(new URLRequest("test.xml"));
        }
    }
}

正如评论中所建议的那样,我尝试将“全局安全设置面板”设置为“始终允许”,但这并没有什么不同。

4

1 回答 1

2

本地文件系统设置很棘手,最简单的方法是转到Flash Player 全局安全设置并将您正在调试的文件夹添加到始终受信任的位置列表中。检查“始终允许”选项可能不起作用,不知道为什么,正如我所说 - 棘手。

于 2018-02-20T22:25:36.937 回答