0

我是 ActionScript 的新手,从 URLStream 获取字节时遇到了一些问题。

我正在尝试连接到一个 URL,并从此 URL 获取字节。

我创建private var urs:URLStream;urs.connected返回 true。现在我想从这个 url 中获取字节。我的代码是:

public class myClass extends MovieClip
{
    private var urs:URLStream;
    private var ns:NetStream;
    private var urr:URLRequest;
    private var textStr:TextField;

    public function myClass()
    {
        var urr:URLRequest;
        var urs:URLStream;
        urr=new URLRequest("http://myserver/video/video.flv");
        urs=new URLStream();
        urs.addEventListener(flash.events.ProgressEvent.PROGRESS,progresHnd);
        urs.addEventListener(flash.events.Event.COMPLETE,completeHnd);
        urs.addEventListener(flash.events.Event.CLOSE,closeHnd);
        urs.addEventListener(flash.events.Event.OPEN,openHnd);
        urs.load(urr);

        if (urs.connected)
        {
            var myint:int = urs.readByte();
            textStr.text = "success";
            addChild(textStr);
        }
        else 
        {
            textStr.text = "urs not connected";
            addChild(textStr);
        }
    }
}

代码在urs.readByte();. (可能有错误 #2030,不确定)

有人可以帮我解决这个问题吗?(或提供另一种获取字节的方法)

谢谢!

4

1 回答 1

1

已连接表示服务器是否已连接,并不表示数据加载完成。要读取字节,您需要等到数据加载完成,即您可以在完整的处理程序中读取字节。

public function completeHnd(evt:Event):void {
    var myint:int = urs.readByte();
}

附加说明,当您在构造函数中添加var urs:URLStream;var urs:URLStream;时,它们会隐藏类成员ursurs. 所以你需要从构造函数中删除这些声明。

// remove these two lines from constructor
var urs:URLStream;
var urr:URLRequest;
于 2014-03-05T09:42:21.307 回答