我使用Laravel和DropzoneJS创建了一个表单here,我尝试上传一个Gimp文件(.xcf),当它上传时,它将保存在S3中,如下所示
running command: "docker exec -it 5b02ab015730 bash -c "echo Hello, world""
Hello, world
没有“xcf”扩展名只是以点结尾的随机名称。
另外,我创建了一个文本文件,当我尝试上传以.txt扩展名上传的文件时,将其重命名为test.xcf。
这是我处理上传的UploadController.php:
<random-name>.
我不知道为什么会这样做。
答案 0 :(得分:1)
我建议你为文件名生成自己的哈希值,就像我在这段代码中所做的那样:
$file = $request->file('csv');
$path = $file->storeAs(
'csv',
md5($file->getClientOriginalName()) . $file->getClientOriginalExtension(),
's3'
);
您还可以将uniqid()
添加到 md5 输入
答案 1 :(得分:0)
如果你正在使用laravel 5+,那么你也应该使用它来获得扩展名。
$extension = $file->getClientOriginalExtension();
这样可以正常工作。