Как загружать файлы с помощью ActionScript асинхронно? - PullRequest
1 голос
/ 03 февраля 2011

Примечание. С Flash / ActionScript я вообще не знаком.

Я использую плагин веб-камеры Jquery для захвата изображений с камеры.Этот плагин предоставляет код ActionScript, который загружает захваченные изображения на сервер.Он отлично работает, за исключением одной вещи - пока файл загружается, моя веб-страница зависает.

Где можно прочитать о загрузке асинхронных файлов с помощью Flash или как изменить следующий код для асинхронной загрузки файла?

public static function save(file:String):Boolean {


            if ("stream" == mode) {

            return true;

        } else if (null != buffer) {

            if ("callback" == mode) {

                for (var i = 0; i < 240; ++i) {

                    var row = "";
                    for (var j=0; j < 320; ++j) {
                        row+= buffer.getPixel(j, i);
                        row+= ";";
                    }
                    ExternalInterface.call("webcam.onSave", row);
                }

            } else if ("save" == mode) {

                if (file) {

                    var e = new JPGEncoder(quality);

                    var sal = {};
                    sal.sendAndLoad = XML.prototype.sendAndLoad;
                    sal.contentType = "image/jpeg";
                    sal.toString = function() {
                        return e.encode(JSCam.buffer);
                    }

                    var doc = new XML();
                    doc.onLoad = function(success) {
                        ExternalInterface.call("webcam.onSave", "done");
                    }

                    sal.sendAndLoad(file, doc);
/*
                    ExternalInterface.call('webcam.debug', "error", "No save mode compiled in.");
                    return false;
*/
                } else {
                    ExternalInterface.call('webcam.debug', "error", "No file name specified.");
                    return false;
                }

            } else {
                ExternalInterface.call('webcam.debug', "error", "Unsupported storage mode.");
            }

            buffer = null;
            return true;
        }
        return false;

}

1 Ответ

0 голосов
/ 03 февраля 2011

Педро Коррея поделился классом actionscript , который реализует асинхронную загрузку.Это немного старый (AS2, 2007), но может помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...