Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
У меня есть регистрация в которой валидатор проверяет поля
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|confirmed|min:8',
'phone' => 'required|unique:users'
]);
я обращаюсь в функцию регистрации через аякс запрос, как получить ответы в форме JSON? Сейчас когдая ловлю ошибку
axios.post(`/generatesms`, {phone: phone})
.then(response => {
if (response.data.success == 'true') {
document.querySelector('#enterPhone').innerHTML = phone;
navigationEnterMenu(target); //успех
next_sms_time = response.data.data.timer;
enterTimer();
}else{
document.querySelector('#madalEnterPhone').classList.remove('js-modal-enter-content-open');
document.querySelector('.modal-enter-form-phone-text').innerHTML = phone + '<br>Не зарегистрирован!';
document.querySelector('#errorEnter').classList.add('js-modal-enter-content-open');
}
}).catch(err => {
console.log(err);
});
в catch(err) если валидация не пройдена выходит вот это
Error: Request failed with status code 422
at createError (app.js?v1.00:607)
at settle (app.js?v1.00:878)
at XMLHttpRequest.handleLoad (app.js?v1.00:82)
как вывести нормально ошибку валдиации чере аякс подскажите пожалуйста?
Не в сети
Добрый день.
Попробуйте так
axios.post(`/generatesms`, {phone: phone})
.then(response => {
if (response.data.success == 'true') {
document.querySelector('#enterPhone').innerHTML = phone;
navigationEnterMenu(target); //успех
next_sms_time = response.data.data.timer;
enterTimer();
} else {
document.querySelector('#madalEnterPhone').classList.remove('js-modal-enter-content-open');
document.querySelector('.modal-enter-form-phone-text').innerHTML = phone + '<br>Не зарегистрирован!';
document.querySelector('#errorEnter').classList.add('js-modal-enter-content-open');
}
}).catch(error => {
error.response.data.errors;
console.log(error.response.data.errors)
});
Не в сети
Страницы 1