我有一个带有图片上传功能的项目,为此我使用了Uppy
。这是我的代码:
...
<div id="drag-drop-area" name="fotografije[]"></div>
<script src="https://transloadit.edgly.net/releases/uppy/v1.6.0/uppy.min.js"></script>
<script>
var uppy = Uppy.Core()
.use(Uppy.Dashboard, {
inline: true,
target: '#drag-drop-area'
})
.use(Uppy.Tus, {endpoint: 'https://master.tus.io/files/'}) //you can put upload URL here, where you want to upload images
uppy.on('complete', (result) => {
console.log('Upload complete! We’ve uploaded these files:', result.successful)
})
</script>
...
我尝试在name="fotografije[]"
中使用div
,但是当然没有帮助。我只需要命名此输入即可将我的图像上传到服务器。如何使用Uppy
来做到这一点?
答案 0 :(得分:1)
因此,您需要使用Uppy Dashbord和Laravel下载多个文件
您的后端服务器是否位于https://master.tus.io/files/?如果需要,请更正。
然后,您必须取回从前端发送到作为Ajax POST处理该请求的控制器(在后端Laravel中)的请求。
这看起来像(在将route.php作为POST添加之后)
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class UploadFileController extends Controller
{
public function showUploadFile(Request $request) {
$file = $request->file('fotografije');
//Display File Name just for check or do a dd
echo 'File Name: '.$file[0]->getClientOriginalName();
//Move Uploaded File
$destinationPath = 'uploads';
$file->move($destinationPath,$file->getClientOriginalName());
}
}
此外,不要忘记在您的uppy代码中添加crsf令牌,以免出现错误请求。
希望获得帮助