我吃西红柿11 2019-05-05 17:21 采纳率: 0%
浏览 416

PLupload 上传后文件重复了四份,并且每一份都是大小相等的,无法打开;

图片说明

$("#uploader").pluploadQueue({
            runtimes : 'gears,flash,silverlight,browserplus,html5,html4',//用来指定上传方式,指定多个上传方式请使用逗号隔开。一般情况下,你不需要配置该参数
            url : CONTENT_PATH+'/record/file.do',
            max_file_size : '10mb',
            unique_names : true,//当值为true时会为每个上传的文件生成一个唯一的文件名,并作为额外的参数post到服务器端,参数明为name,值为生成的文件名。
            multiple_queues : true,
            chunk_size: '10mb',
            dragdrop: false,
            // Specify what files to browse for
            /*filters : [ //可以使用该参数来限制上传文件的类型,大小等,该参数以对象的形式传入,它包括三个属性:
                 {title : "doc, doc文档", extensions : "jpg,jpeg,png,gif,zip,rar,pdf,docx,doc,xlsx,xls,pptx,ppt,vsd,vsdx"}  
                {title : "doc, doc文档", extensions : "zip,rar,pdf,docx,doc,xlsx,xls"} 
            ],*/
            flash_swf_url : CONTENT_PATH+'/js/plupload/js/plupload.flash.swf',//当使用flash上传方式会用到该参数。
            silverlight_xap_url : CONTENT_PATH+'/js/plupload/js/plupload.silverlight.xap',//当使用silverlight上传方式会用到该参数。
        });

上传完成后

图片说明

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-09 08:12
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    在您的示例中,您似乎尝试使用不同的上传方式(Gears、Flash、Silverlight、BrowserPlus、HTML5和HTML4)来实现文件上传。然而,根据您的描述,我看到一些问题:

    1. unique_names 设置为 true 的情况下,如果文件名已存在,那么新的文件将被覆盖而不是重命名。

    2. 文件大小超过最大限制时,不会抛出错误,而是继续上传。这可能是因为默认设置中没有启用错误处理。

    3. 如果文件太大或太小,则不会提示用户选择合适的大小范围。

    4. 对于 HTML5 和 HTML4 上传方式,请确保浏览器支持这些功能,并且它们是可用的。例如,在 Firefox 中,可以通过以下命令检查是否支持 HTML5:

      firefox --version | grep -i html5
      

    对于您的示例代码,您可以考虑以下几个改进点:

    • 使用错误处理来验证文件大小和文件名不冲突。
    • 将文件大小限制更改为可接受的范围内。
    • 提供一个警告消息告诉用户文件过大或者过小。
    • 根据用户的选择提供不同的文件名称。

    下面是一个基本的修改示例,展示了如何处理这些问题:

    // 初始化上传页面
    $('#uploader').pluploadQueue({
        runtimes: ['gears', 'flash', 'silverlight', 'browserplus', 'html5', 'html4'],
        url: CONTENT_PATH + '/record/file.do',
        max_file_size: '10MB',
        unique_names: true,
        multiple_queues: true,
        chunk_size: '10MB',
        dragdrop: false,
    
        filters: [
            {
                title: '图片',
                extensions: ['jpg', 'jpeg', 'png', 'gif', 'zip', 'rar', 'pdf', 'docx', 'doc', 'xlsx', 'xls', 'pptx', 'ppt', 'vsd', 'vsdx']
            },
            {
                title: '其他文件',
                extensions: ['txt', 'csv', 'mp3', 'wav', 'mov', 'avi', 'wmv', 'mp4', 'flv', 'mpeg', 'mkv', 'webm', 'ogv', 'pdf']
            }
        ],
        flash_swf_url: CONTENT_PATH + '/js/plupload/js/plupload.flash.swf',
        silverlight_xap_url: CONTENT_PATH + '/js/plupload/js/plupload.silverlight.xap'
    });
    

    请注意,这个示例仍然存在一些问题,比如错误处理和文件大小限制。在实际应用中,您可能需要进一步优化和完善这些部分。

    评论

报告相同问题?