使用paramName键进行多次上传

时间:2017-04-10 14:39:06

标签: dropzone.js

我需要上传多个文件,服务器希望uuid作为密钥存在。

files[cd43fbad-305e-430c-a25c-8f0d7eabbd66]
files[4fa59bc2-c44f-40e0-b793-66a48d6abcb1]
files[56ce2264-6f7e-4824-a0aa-d28631784dda]

然而,对于dropzone,似乎只有files部分是可变的。可以某种方式挂钩它为多个文件附加[]的方式吗?

2 个答案:

答案 0 :(得分:2)

正确的方法是使用函数覆盖paramName选项。

示例:

    new Dropzone("#image-dropzone", {
        autoProcessQueue: false,
        parallelUploads: 20,
        maxFiles: 20,
        uploadMultiple: true,
        acceptedFiles: "image/jpeg,image/png,image/gif",
        paramName: function(n) {
            uuid = "do whatever you need to find the uuid";
            return "file[" + uuid + "]";
        },
    });

答案 1 :(得分:1)

我有类似的问题,我解决了。

你可以覆盖如下的js代码。 在return语句中添加您的代码。

Dropzone.prototype._getParamName = function(n) {
            if (typeof this.options.paramName === "function") {
                return this.options.paramName(n);
            } else {
//                return "" + this.options.paramName + (this.options.uploadMultiple ? "[" + n + "]" : "");
                return "" + this.options.paramName;
            }
        };