URLLoader 不从 URLRequest 加载数据。没有错误信息

URLLoader doesn't load data from URLRequest. No error messages

我正在尝试从我的 AS3 程序中的网站加载数据。但是,urlLoader.load() 永远不会完成,但程序运行没有任何错误。

这是我的代码:

Main.as:

import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import ttTextField;

public class Main extends Sprite 
{
    private var textField:ttTextField = new ttTextField("", false);

    public function Main():void
    {
        var urlRequest:URLRequest = new URLRequest("http://itch.io/api/1/API_KEY_REMOVED_FOR_SECURITY/my-games");
        urlRequest.method = URLRequestMethod.GET;

        var urlLoader:URLLoader = new URLLoader();
        urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
        urlLoader.addEventListener(Event.COMPLETE, completeHandler);

        urlLoader.load(urlRequest);

        stage.addChild(textField);
    }

    private function completeHandler(event:Event):void
    {
        textField.text = event.target.data;
    }
}

ttTextField.as:

import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormatAlign;
import flash.text.TextFormat;

public class ttTextField extends TextField
{
    [Embed(source = "../files/Fixedsys500c.ttf", embedAsCFF = "false", fontName = "fixedSys")] private var fontClass:Class;
    private var textFormat:TextFormat = new TextFormat("fixedSys", 24);

    public function ttTextField(string:String, centered:Boolean)
    {
        if (centered)
        {
            textFormat.align = TextFormatAlign.CENTER;
        }
        else
        {
            textFormat.align = TextFormatAlign.LEFT;
        }

        string = string;

        this.autoSize = TextFieldAutoSize.LEFT;
        this.mouseEnabled = false;
        this.embedFonts = true;
        this.textColor = 0xFFFFFF;
        this.defaultTextFormat = textFormat;
        this.text = string;
    }

}

ttTextField 可以显示常规字符串,因此 class 似乎不是问题所在。我只是为了完成而包含它。

我也在构建 运行 使用 Sublime Text 2。我的 sublime-build 文件如下:

{
"cmd": ["C:\Users\Dan\Documents\flex_sdk_4.6\bin\mxmlc.exe", "-output=C:\Users\Dan\TTTT\TTTT.swf", "-default-background-color=#00FF00", "-default-size=800,600", "C:\Users\Dan\TTTT\src\Main.as", "-static-link-runtime-shared-libraries=true"],
"file_regex": "(.*)[(](\d+)[)]:(?: col: (?:\d+))? *Error: (.*)",
"selector": "source.actionscript",

"variants":
[
    {
        "name": "Run",
        "shell": true,
        "cmd": ["C:\Users\Dan\TTTT\TTTT.swf"]
    }
]

}

我在 Flash Player 和 Google Chrome 中都尝试过 运行 该程序。每次输出只是 blank screen.

如何让我的 URLLoader 真正加载 URL?如果需要,我可以提供更多信息。感谢阅读。

我认为您的 Main class 应该从 MovieClip 而不是 Sprite 延伸:

public class Main extends MovieClip 
{
    //  ...
}

要在浏览器中调试您的项目,您可以使用可以从 here 下载的 Flash Player 调试版本。

希望能帮到你。