从Laravel到AJAX fileupload的错误

时间:2017-02-02 09:16:14

标签: ajax validation file-upload laravel-5

我有一个AJAX上传,它将上传的文件(在本例中为图像)发送到Laravel 5.3中的一个函数。我在所述函数中有这个验证检查:

...

$validator = Validator::make($request->all(), [
    'image' => 'image|mimes:jpeg,png,jpg|max:512',
]);

// If validator fails return this error to AJAX
if($validator->fails()) {
    return response()->json('error', 422);
}

...

我如何能够使用自定义错误设置response()->json('error', 422)。现在我只收到文件上传失败的错误。我希望得到更多反馈。

例如:让用户知道他的文件很大或让用户知道他的扩展名是不允许的。

由于

1 个答案:

答案 0 :(得分:1)

您可以从验证器获取错误消息并将其发送给响应,这是示例。

if ($validator->fails()) {
        return response()->json([
            'success' => false,
            'error' => $validator->getMessageBag()->toArray()
        ], 422);
    }