3

我通过通用处理程序将 plupload 与 Asp.Net 一起使用。我有一个完全自定义的界面,所以我只是绑定 javascript。我已将其编码为自动启动,但文件一次上传一个。有没有办法让文件并行上传?我为所有内容分配了唯一的文件名,所以这不是问题。

    var uploader = new plupload.Uploader({
        runtimes: 'gears,html5,flash,silverlight,browserplus',
        browse_button: 'select-from-folder',
        container: 'uploader',
        drop_element: 'uploader-drop-element',
        max_file_size: '2000mb',
        chunk_size: '1mb',
        unique_names: true,
        url: '/myuploader.ashx?globalId=' + globalId,
        flash_swf_url: '/scripts/plupload/plupload.flash.swf',
        silverlight_xap_url: '/scripts/plupload/plupload.silverlight.xap',
        filters: [
            {
                title: "Application Supported",
                extensions: "jpg,gif,png,pdf,mp4,flv,avi,wmv"
            }
        ]
    });

    uploader.init();


    uploader.bind('Init', function (up, params) { 
        // removed for brevity
    });

    uploader.bind('FilesAdded', function (up, files) {
        for (var i in files) {
            // removed for brevity
        }

        uploader.start(); // auto-start the uploader
    });

    uploader.bind('UploadProgress', function (up, file) {
        // removed for brevity
    });

    uploader.bind('FileUploaded', function (up, file, resp) {
        if (uploader.total.uploaded >= uploader.files.length) {
            // removed for brevity
        }
    });
4

2 回答 2

2

阅读完文档后,在我看来,目前不支持并行上传,尽管您可能可以修改源代码以使用一些网络工作者来执行此操作。

实际的上传发生在uploadNext()函数中(第 897 行)。

于 2012-12-13T01:54:22.150 回答
-1

您应该为需要进行的每个并行传输创建一个新的 plupload 实例。将这些实例包装在类似于 pluploads 的类中并以适当的方式绑定设置和事件是必不可少的。您还需要实现handleFilesAdded将新文件分发到集群的自定义方法。

有一个创建 plupload 实例集群并制作并行帖子的项目。您可以查看:https ://github.com/bennadel/Plupload-Cluster

于 2015-09-19T13:30:14.883 回答