【发布时间】:2020-08-15 02:41:24
【问题描述】:
我有一个图像上传器,它允许在前端 (vue.js) 上使用多个图像。当我将它发送到 Laravel 时,它并没有达到我的 foreach 循环。我跟踪print 日志一直执行到foreach 循环运行,但我不知道为什么它没有通过每一个,除非这不是正确的方法。
** JS **
let formData = new FormData();
this.files.forEach((x,index) => {
formData.append("file", x)
});
axios.post('/admin/upload', formData, {
headers: {
'Content-Type': 'multipart/form-data',
}
})
**Laravel **
print "outside";
if ($request->hasFile('file')) {
print "inside";
$files = $request->file('file');
$stack = [];
foreach ($files as $file) {
print "Looping";
$fileName = Storage::put('/trace/', file_get_contents($file->getRealPath()), ['visibility' => 'public']);
array_push($stack, $fileName);
}
return response()->json($stack);
}
【问题讨论】:
-
添加 $files 变量,并检查您是否将文件发送到服务器。