问题标签 [urlloader]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-flex - 如何让 URLLoader 返回一个 AsyncToken?
我试图通过 HTTP 为我的 Flex 应用程序检索二进制数据,但遇到了一些绊脚石。HTTPService 好像不太好处理二进制数据,有人说用 URLLoader。但是 URLLoader 没有 HTTPService 提供的漂亮的 AsyncToken/IResponder 接口。
所以,我做了一些搜索,找不到任何扩展 URLLoader 来提供这种功能的人。我自己尝试了一下: http: //pastebin.com/d7369d0e0
基本上,它包装了一个 URLLoader 和一个 AsyncToken,并将来自 URLLoader 的 COMPLETE、IO_ERROR 和 SECURITY_ERROR 事件映射到在 AsyncToken 上引发的结果/错误。
基本用法:
这是解决问题的正确方法吗?有现成的解决方案吗?我很想听听反馈。
谢谢,
卡尔提克
xml - Flash AS3 - 从本地服务器上的外部 Web 目录加载 XML
闪存是否可以从其所在服务器的根目录外部访问数据。
IE
根目录 = /var/www/httpdocs
SWF = /var/www/httpdocs/flash/file.swf
XML = /var/www/xml/file.xml
谢谢!
flash - (as3) URLloader 保持连接活跃
我对一个简单的 URLLoader 有一点问题,它只是从一个 url 加载数据,然后处理这些数据,没什么复杂的。但是,当我运行它时,它会使连接保持打开状态。在浏览器底部显示:
从 www 传输数据....
数据被成功读取,所以它应该关闭连接吗?但似乎不想这样做。无论如何要关闭所有打开的连接,或者以某种方式删除此类消息?
先感谢您。
actionscript-3 - Actionscript 3:服务器轮询演示应用程序中的内存泄漏
我正在 AS3 中构建一个远程演示工具。简而言之,一个用户(演示者)可以访问“目录”HTML 页面,其中包含演示文稿中每张幻灯片的链接,并且任意数量的观众可以在另一个页面上观看演示文稿,而该页面又位于每秒轮询服务器以确保其位于正确幻灯片上的 SWF 形式。每当管理员单击目录中的幻灯片链接时,数据库就会更新,并且在下一次请求时,演示文稿 swf 会将其当前显示的幻灯片的标签与从服务器获得的响应进行比较。如果响应与当前标签不同,则 swf 会在时间线中擦洗,直到找到正确的帧标签;否则,它什么也不做,等待下一个轮询结果(一秒钟后)。
每张幻灯片都包含一个带有自己嵌套时间轴的影片剪辑,只要幻灯片显示,该时间轴就会循环播放。没有动作脚本控制任何嵌套的影片剪辑,主时间轴上也没有任何动作脚本,除了stop();
每个关键帧上的 s(每个关键帧都是演示文稿中的幻灯片)。
一切都已构建并完美运行。唯一令人不安的是,如果演示文稿 swf 打开足够长的时间(例如 20 分钟),则轮询开始对任何给定幻灯片上的动画剪辑的帧速率产生显着影响。也就是说,每一秒,持续约十分之三秒的动画帧率都会明显下降,这是非常明显的(因此是整个演示套件的交易破坏者!)。
我知道 AS3 在内存管理方面存在问题,并且我一直在努力重用对象和事件侦听器。代码本身非常简单;有一个Timer
实例每秒触发一次,它触发 anew URLRequest
被 a 加载URLLoader
。被从一个调用到另一个调用URLLoader
重用,而URLRequest
不是(它每次都需要用一个新的缓存终止值初始化,从一个调用中检索到new Date().time
)。在整个类中实例化的唯一对象是Timer
、URLLoader
、各种URLRequests
(应该被垃圾收集),唯一的事件监听器在Timer
(添加一次)、URLLoader
(添加一次),以及在时间线中前后擦洗以找到正确幻灯片的例程(一旦找到正确的幻灯片,它们就会被删除)。
我一直在使用mr doob 的 stats 包来监控内存使用情况,它肯定会随着时间的推移而增长,所以一定会有泄漏(经过一些清理和大约 25 分钟的正常运行时间,它从最初的约 30 MB 增长到 > 200 MB)。
有没有人对可能导致性能问题的原因有任何想法?
更新:我不完全确定性能问题与内存直接相关;我运行演示文稿 swf 的一个实例大约 15 分钟,虽然内存使用量仅攀升至大约 70 MB(并保持在那里),但每隔一秒就会出现明显的打嗝,与轮询调用一致(通过 Firebug 的 Net 面板跟踪)。还有什么可能导致卡顿的电影剪辑?
apache-flex - URLLoader 取消任何浏览器事件的加载
我在页面中有一个 flash 元素,它根据一些可能需要一分钟才能加载的复杂查询来加载图表。我用这段代码调用查询:
我监听完整事件或任何服务器错误事件。
我的问题是当用户想要在 flash 加载 URL 时进入另一个页面时:浏览器在接受用户请求之前正在等待 url 完全加载。正如我所说,加载此图表最多可能需要一分钟,如果我的用户想要更改页面,等待他们有点烦人。
这是我的问题:是否有一个事件可以监听来自浏览器的任何事件(点击另一个链接,点击浏览器的“返回”按钮......)?如果我这样做的方式有误,请毫不犹豫地告诉我,我真的不习惯在闪存中编程。
谢谢你。
actionscript-3 - Combining URLRequest, URLLoader and Complete Event Listener In Actionscript 3.0?
when handling data, i always have to write the following:
while i can understand the usefulness of these 2 objects and event listener being separate, since they often work with each other i'd like to know if there is a method that will combine them all? the closest i can get is this, but it's a bit pointless/nesting:
what i'd really love would be something that automatically combines the URLRequest, URLLoader and completed event listener like this:
actionscript-3 - 我正在尝试解析我在 Actionscript 3.0 中加载的文本文件,请帮助
我能在 Actionsript 3.0 中找到有关 URLLoader 对象的所有信息都涉及加载 XML 文件,我不想这样做。我正在尝试逐行加载要解析的 .txt 文件,每行用逗号分隔。任何人都知道这样做的方法或我可以找到一些关于如何做到这一点的信息的地方?谢谢!
apache-flex - Flex 3关闭UrlLoader抛出异常
我正在尝试使用 UrlLoader 模拟“HEAD”方法;本质上,我只想检查文件是否存在而不下载整个文件。我想我只会使用 HttpStatusEvent,但是当您在调试模式下运行时,以下代码会引发异常(我无法将其包装在 try/catch 块中)。
我尝试改用 ProgressEvents,但似乎有些 404 页面返回内容,因此状态事件将正确识别页面是否存在。
有人有想法么?
flash - 多个 URLLoader
我正在使用 URLLoader 加载多个 xml 文件。
问题是我认为 LOADING_PROGRESS 在所有加载完成后会被调度,并且每个 xml 都不是异步加载的。
我怎样才能让它异步加载,并让它为每个进度滴答调用进度事件。
actionscript-3 - 使用相同 URLRequest 时的 URLLoader.load() 问题
我的事件监听器与 URLLoader 有问题,但这个问题发生在 IE 中,而不是 FF 中。
问题是我的 getBaseURL 在我至少执行了一次代码后会自动执行,但这仅在 IE 中是这种情况。发生的情况是我调用我的 getUploadURL,我确保服务器发送一个将导致 Event.COMPLETE 的事件,因此 getBaseURL 被执行,并且侦听器被删除。如果我调用 getUploadURL 方法并输入错误的路径,我不会得到 Event.COMPLETE 而是其他一些事件,并且不应执行 getBaseURL。
这是 FireFox 中的正确行为。在 IE 中,看起来 load() 方法实际上并没有调用服务器,它直接跳转到 Event.COMPLETE 的 getBaseURL()。在分配新的 URLLoader 之前,我检查了 _loader 上的 willTrigger() 和 hasEventListener(),事实证明该事件已被很好地删除。
我希望我说得通,我简化了我的代码。快速总结一下:在 FireFox 中它运行良好,但在 IE 中,第一次调用会起作用,但第二次调用不会真正调用 .load() 方法;似乎它使用了第一次调用中先前存储的结果。
希望有人能帮帮我,谢谢
鲁迪