Can';t验证laravel中的输入文件

Can';t验证laravel中的输入文件,laravel,validation,laravel-5,vue.js,httprequest,Laravel,Validation,Laravel 5,Vue.js,Httprequest,我想验证文件输入,但验证不起作用。它总是返回给定的数据无效。即使给定的文件满足验证要求,但知道我正在同时上载多个文件: 以下是我使用的验证方法: Validator::make($request->all('files'), [ 'files' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048' ])->validate(); <input type="file" id="fil

我想验证
文件输入
,但验证不起作用。它总是返回
给定的数据无效。
即使给定的文件满足验证要求,但知道我正在同时上载多个文件:

以下是我使用的验证方法:

    Validator::make($request->all('files'), [
        'files' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'
    ])->validate();
<input type="file" id="files" ref="files" multiple v-on:change="uoloadFiles()" name="files"/>
下面是我使用的HTML

    Validator::make($request->all('files'), [
        'files' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'
    ])->validate();
<input type="file" id="files" ref="files" multiple v-on:change="uoloadFiles()" name="files"/>

知道我使用vue处理表单提交


感谢您的帮助

如果您只有此字段,您可以执行以下操作:

Validator::make($request->only('files'), [
    'files.*' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'
])->validate();
否则,使用不带参数的
all
方法:

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

这应该是可行的,因为您正在上载多个文件,每个文件都应该分别进行验证

Validator::make($request->all('files'), [
    'files.*' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'
])->validate();
请注意
*

进一步参考

尝试

$this->validate(request(), [
         'files' => 'required|mimes:jpeg,png,jpg,gif,svg|max:2048'
    ]);

我认为你不需要
image
只要
mimes
就可以了

我认为这是因为你一次上传多个文件,这使得
文件
成为一个数组,而不是一个文件。问题中提供的信息不足,无法验证这一点。是的,我正在上载多个文件。您将需要类似我正在使用的文件