После проверки ввода в RegistrationController моего API мне нужно получить ответ JSON обратно клиенту.При использовании функции валидатора по умолчанию я не получаю ответ.Тем не менее, функция работает правильно.Когда проверка завершится успешно, пользователь будет создан, когда он потерпит неудачу, пользователь будет перенаправлен обратно.
protected function validator(array $data)
{
return Validator::make($data, [
'first_name' => 'required|string|max:255',
'last_name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|min:6|confirmed',
'birth_year' => 'required|integer',
'lat' => 'required',
'lon' => 'required',
]);
}
Мне нужно получить ответ обратно при неудаче проверки, чтобы проинформировать пользователя о неудачном вводеполе.Я попытался поместить результат Validator::make
в переменную и получить ошибки.Но если нет return
непосредственно перед функцией Validator::make
, происходит сбой с ошибкой «Метод проверки не существует».
protected function validator(array $data)
{
$validator = Validator::make($data, [
'first_name' => 'required|string|max:255',
'last_name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|min:6|confirmed',
'birth_year' => 'required|integer',
'lat' => 'required',
'lon' => 'required',
]);
if ($validator->fails()) {
//pass validator errors as errors object for ajax response
return response()->json(['errors'=>$validator->errors()]);
}
}
Как вернуть ответ JSON с ошибками проверкиклиенту?И почему это важно, если перед функцией Validator::make
стоит return
?