当前位置: > > > JS - 文件上传组件WebUploader使用详解5(添加自定义参数)

JS - 文件上传组件WebUploader使用详解5(添加自定义参数)

WebUploader 是使用 Form 表单的方式上传文件,上传时还会携带有如下参数一起提交:
  • name:文件名
  • size:文件大小
  • type:文件类型
  • lastModifiedDate:文件最后修改时间
  • chunks:分片总数(如果开启分片上传的话)
  • chunk:当前分片索引(如果开启分片上传的话)
但有时这些参数还不能够满足我们的需要,如果想要额外附带上一些自定义的参数(比如文章 id),通常有如下 3 种方法。

1,初始化的时候直接添加参数

//初始化Web Uploader
var uploader = WebUploader.create({
    // swf文件路径
    swf: 'webuploader/Uploader.swf',
    // 文件接收服务端。
    server: 'http://www.hangge.com/upload.php',
    // 上传时添加自定义参数
    formData: {
        articleId: 111
    },
    // 选择文件的按钮。可选。
    // 内部根据当前运行是创建,可能是input元素,也可能是flash.
    pick: '#picker'
});

2,初始化后再添加参数

即在 WebUploader 初始化后,uploader.upload() 方法调用前添加参数,效果和上面一样。
// 上传时添加自定义参数
uploader.options.formData.articleId = 111;

3,在 uploadBeforeSend 事件响应方法中添加参数

这种方式适合对不同的文件单独设置不同的参数。
uploader.on( 'uploadBeforeSend', function( block, data ) {
    var file = block.file;
    console.log("当前文件id", file.id);
    console.log("当前文件名", file.name);
    // 上传时添加自定义参数
    data.articleId= 111;
},2);
评论0