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);