【发布时间】:2013-05-21 12:36:53
【问题描述】:
首先感谢您的阅读。
这是我的代码:
private function send( pkt:ByteArray )
{
var int count = 0;
var request:URLRequest = new URLRequest( ... );
var loader:URLLoader = new URLLoader( ... );
request.contentType = URLLoaderDataFormat.BINARY;
request.method = URLRequestMethod.POST;
loader.addEventListener(Event.COMPLETE, loader_complete);
loader.dataFormat = URLLoaderDataFormat.BINARY;
request.data = pkt;
loader.load( request );
//to pause the execution
while( count < 100000000 );
}
在最后一个 while 循环结束之前,不会调度 COMPLETE 事件。 也就是说在 URLLoader.load( URLRequest ) 之后,loader 不会立即将数据发送出去(没有延迟)? 导致需要连续执行许多 loader.load(request) 命令,并且按顺序,我需要按顺序为每个加载命令立即发送数据。 如何解决?
谢谢。
【问题讨论】:
-
您是否要分块上传文件?
-
嗯,我不明白,你能再澄清一下你的问题吗?您可以同时启动任意数量(理论上)的加载请求,并且在那里不需要。
-
例如,有 4 个 loader.load() 命令,分别加载 4 个 chunk 数据(依次为 c1、c2、c3、c4)到服务器。服务器可能会按 c2、c3、c1、c4(多线程)的顺序接收块,这不是我的预期。所以我希望 c1 在 loader.load(c1) 之后“立即”被送走,然后是 c2、c3 等等。抱歉表达不好。
标签: actionscript-3 post urlloader