【问题标题】:How to get BlueImp jQuery FileUpload to generate unique filenames如何让 BlueImp jQuery FileUpload 生成唯一的文件名
【发布时间】:2012-06-29 06:18:59
【问题描述】:

我目前有一个使用 BlueImp jQuery FileUploader 的 ASP.NET MVC 项目,效果很好。

https://github.com/blueimp/jQuery-File-Upload

但是,似乎默认行为是在将文件上传到服务器时使用原始文件名。理想情况下,我希望 jQuery FileUploader 为每个上传的文件生成一个唯一的文件名。

我确实尝试在服务器上对每个上传的文件进行重命名,但后来我意识到 FileUploader 似乎挂在原始文件名上。

有没有办法让 jQuery 上传器为每张上传的图片生成一个随机/唯一的文件名(无论是单独的还是批量的)?

【问题讨论】:

    标签: javascript jquery asp.net-mvc jquery-plugins file-upload


    【解决方案1】:

    我也遇到了同样的问题。使用 PHP 的 upload.class 文件,我向 handle_file_upload 方法添加了一个唯一的文件名,如下所示:

    之前:

    $file->name = $this->trim_file_name($name, $type, $index);
    

    之后:

    $file->name = $this->trim_file_name(md5($name), $type, $index);
    

    我相信你可以在 ASP.NET 中做类似的事情


    编辑:

    最新版本在UploadHandler.php的506行,修改:

    $name = $this->trim_file_name($file_path, $name, $size, $type, $error, $index, $content_range);
    

    $name = $this->trim_file_name($file_path, md5($name), $size, $type, $error, $index, $content_range);
    

    完美运行!

    【讨论】:

    • 不幸的是,我在 google 的搜索中也看到了这个 handle_file_upload 方法的提及,但是在我下载的 BlueImp .NET 项目中包含的 jquery 文件中找不到对这种方法的任何引用- 不幸的是,我的 JS 知识也很差。
    • 这是最好的答案...虽然我已经编辑它以匹配 Bluimp 文件上传中的最新文件集。 [但它被拒绝了......所以我在下面添加了它作为评论]
    【解决方案2】:
      protected function handle_file_upload($uploaded_file, $name, $size, $type, $error,
            $index = null, $content_range = null) {
                $file = new stdClass();
     }
    

    之前:

    $file->name = $this->get_file_name($name, $type, $index, $content_range);
    

    之后:

    $file->name = $this->get_file_name(uniqid(), $type, $index, $content_range);
    

    【讨论】:

      【解决方案3】:

      我编辑了 Paul 的答案,但被拒绝了……无论如何,他的答案是正确的,但代码行是针对旧文件的。

      最新版本在UploadHandler.php的506行,修改:

       $name = $this->trim_file_name($file_path, $name, $size, $type, $error, $index, $content_range);
      

       $name = $this->trim_file_name($file_path, md5($name), $size, $type, $error, $index, $content_range);
      

      完美运行!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-18
        • 2017-03-24
        • 1970-01-01
        • 2016-08-23
        相关资源
        最近更新 更多