我正在尝试将值发布到验证中并以 json 形式返回响应,而不是文档中给出的 return view
。
$validator = Validator::make($request->all(), [
'about' => 'min:1'
]);
if ($validator->fails()) {
return response()->json(['errors' => ?, 'status' => 400], 200);
}
帖子是通过 ajax 生成的,所以我也需要在 ajax 中接收响应。
我想通了,为了防止在返回响应中刷新页面,我必须在数组外给它一个状态码 200。但是我不知道该给 'errors'
部分什么。我应该在那里写什么?
最佳答案
您可以使用 $validator->messages()
返回一个数组,其中包含有关验证器的所有信息,包括错误。 json
函数获取数组并将其编码为 json 字符串。
if ($validator->fails()) {
return response()->json($validator->messages(), Response::HTTP_BAD_REQUEST);
}
注意:在验证错误的情况下,最好不要返回响应代码 200。您可以使用其他状态代码,如 400 或 Response::HTTP_BAD_REQUEST
关于javascript - Laravel 5 验证 - 作为 json/ajax 返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32555058/