如何在上传前重命名文件

How to rename files before upload

本文关键字:重命名 文件      更新时间:2023-09-26

我需要重命名使用dropzone.js上传的每个文件,以在他的名字中添加时间戳。

我已经尝试过在服务器端这样做,但我无法恢复修改后的名称,并将其设置到脚本中,以便在浏览器上删除文件时在服务器上进行删除。

在上传之前,我也尝试在脚本中重命名文件,但没有成功。我尝试使用的功能是:

accept: function (file, done) {
    file.name = "timestampHere" + file.name;
    done();
}

这个:

sending: function (file, xhr, formData) {
    file.name = "heee" + file.name;
}

但在这两种情况下,当"删除"按钮被触发时,我都无法恢复文件名并更改它以在服务器上进行文件删除。

换句话说,服务器中的文件有时间戳,而浏览器中没有。

在上传之前,是否有任何方法可以恢复保存在服务器上的文件名,并将其设置到浏览器上的脚本中重命名脚本中的文件

我的目标是在文件名中插入时间戳后,点击"删除"按钮也删除服务器上的文件。

我在这里找到了答案:https://stackoverflow.com/a/17457380/2394172

上下文与我的不同,但我使用了他的概念,创建了一个包含原始名称和服务器名称的对象数组的存储库。

有了这个,我可以比较这些值,然后只向服务器发送服务器值。

我希望这能帮助到别人。