我在我的flex应用程序中遇到了一个奇怪的问题。我有一个Video
元素,可以从与SWF应用程序相同的目录中加载FLV文件。如果我将SWF和FLV移动到计算机上的本地目录并在浏览器中加载SWF,则视频播放时没有任何问题。但是,如果我将相同的文件集(SWF,FLV,HTML)移动到网络共享,则视频将不再加载。
我正在使用NetConnection
和NetStream
加载视频,并在我的video.attachNetStream(stream)
对象上调用Video
。
stream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
var video:Video = new Video();
video.attachNetStream(stream);
在我的netStatusHandler()
回调中,我获得的事件状态为: NetStream.Play.StreamNotFound 。
同样,我在从网络共享加载内容时只遇到此问题。
答案 0 :(得分:1)
那将是因为安全沙箱,因为现在您的应用程序不再是“本地”,安全沙箱策略已激活。你可以做两件事;您可以通过security settings page将该网络共享/ swf添加到您的安全沙箱中,或者您可以通过http服务器(apache)“共享”此内容。
您应该在security sandboxes上阅读更多内容。