【发布时间】:2020-01-23 11:05:02
【问题描述】:
我想以 JSON 格式返回失败的验证尝试消息。我以前用过类似的东西,它在 Laravel 5 上工作,我相信......
if ($validator->fails()) {
return response()->json($validator->messages(), 200);
}
但是,对于我们的新项目,我们使用的是 Laravel 6,上面的内容只是返回一个空白页面。
在 Laravel 6 中,以下成功返回错误消息,虽然不是在 JSON...
if ($validator->fails()) {
$msg = $validator->messages();
dd($msg);
}
response() 在 Laravel 6 中的工作方式必须有所改变。
任何想法如何让验证消息在 Laravel 6 中以 JSON 形式返回?谢谢。
【问题讨论】:
-
$validator->errors()应该根据 Validator 合约返回 messageBag 实例,$validator->messages()在哪个版本的 Laravel 上工作?因为我在合同中看不到该方法。 -
感谢 Joe,
return response()->json($validator->errors(), 200);在 Laravel 6 中也为我返回了一个空白页面。 -
您的 apache/laravel 日志是否显示任何错误?看看您进行验证检查的整个方法可能会有所帮助。
-
感谢 mdexp,100%。实际上,我在日志中根本没有收到任何错误。
标签: php laravel validation error-handling laravel-6