Загрузка нескольких файлов не обрабатывается в Laravel 6

Загрузка нескольких файлов не обрабатывается в Laravel 6

27.01.2020 11:45:07 Просмотров 28 Источник

Я пишу API, используя Laravel 6, и у меня возникли некоторые проблемы с загрузкой файлов, фактически, загрузкой любых файлов вообще.

Я использую Postman для тестирования API. В разделе params я ввожу имя, а затем в разделе body (form-data) я ввожу filenameи затем прикрепляю файл.

Когда я отправляю запрос, он возвращается со all goodстатусом "все хорошо", поэтому кажется, что отсутствует all goodчасть и только запуск первой filename.*

если я filenameв самом верху, файл, который я пытаюсь загрузить, находится там, см. ниже;

namespace App\Http\Controllers;

use App\ImageUpload;
use Illuminate\Http\Request;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\Validator;

class ImageUploadController extends Controller
{
    public function store(Request $request): JsonResponse
    {
        $validator = Validator::make($request->all(), [
            'name' => 'required',
            'filename' => 'required',
            'filename.*' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048'
        ]);

        if ($validator->fails()) {
            return response()->json(['error validation failed'], 400);
        }

        if ($request->hasFile('filename')) {
            foreach ($request->file('filename') as $image) {
                $fileName = time().'.'.$image->getClientOriginalExtension();
                $image->move(public_path() . '/uploads', $fileName);

                $imageUpload = new ImageUpload();
                $imageUpload->name = $request->name;
                $imageUpload->filename = $fileName
                $imageUpload->save();
            }
        }

        return response()->json(['All good'], 200);
    }
}
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/59927598/multiple-file-upload-not-processing-in-laravel-6#comment105977913_59927598
@Webinion .. Это там ... Я обновил свой вопрос с ответом

Ответы - Загрузка нескольких файлов не обрабатывается в Laravel 6 / Multiple file upload not processing in Laravel 6

Является ответом!
Vikas Katariya

27.01.2020 12:13:14

   $validator = Validator::make($request->all(), [
        'name' => 'required',
        'filename.*' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048'
    ]);

а ваш почтальон запрос поставил вроде

filename[]  (format type = file) = image1.jpg
filename[]  (format type = file) = image2.jpg
filename[]  (format type = file) = image3.jpg
Закрыть X