За пример возьмем форму регистрации.
back-end
app.post('/api/registration',
function (req, res, next) {
if(req.username == undefined) {
return res.status(400).send('Username not found'); //Пример 1
}
User.findOne({
where: {email: req.body.email}
}).then(function (foundUser) {
if(foundUser) {
return res.status(200).send('That email is already taken.'); //Пример 2
} else {
User.create({
username: req.body.username,
email: req.body.email,
password: bcrypt.hashSync(req.body.password)
}).then(function (foundUser) {
passport.authenticate('local', {
successRedirect: '/',
failureRedirect: '#!/login',
failureFlash: true
});
});
}
});
});
front-end
$scope.signup = function() {
$scope.newUser = {};
$scope.newUser.username = $scope.regUsername;
$scope.newUser.email = $scope.regEmail;
$scope.newUser.password = $scope.regPwd;
$http({
method: 'POST',
url: $scope.url + 'registration',
data: $scope.newUser
}).then(function success(res) {
console.log(res); //Пример 2
}), function (res) {
console.log(res); //Пример 1
}
};
В первом случае, Пример 1 браузер получает ошибку
POST http://localhost:3000/api/registration 400 (Bad Request)
сообщения Username not found не нашел ни где. Если сделать запрос через постман, там получаю и сообщение.
Во втором случае, Пример 2 браузер показывает сообщение
Object {data: "That email is already taken.", status: 200, config: Object, statusText: "OK"}
Моя задача получить сообщение об ошибке от сервера и на основании этой ошибки вывести системное сообщение или произвести какие то манипуляции на стороне клиента. Как правильно это реализовать?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Набросал пример исходя из описания алгоритмаХочу услышать замечания, что стоило бы изменить в этом коде:
На англоязычном стаке задавал вопрос о проблемах подключения шрифта через @font-face
Необходимо реализовать вычитание больших чиселНаписала функцию, но в консоли выводит с ошибкой: 499999-41900
Как проверить поле input[text] ? Только вот не отправляя формуЕсть кнопка "Дальше" нажимая на эту кнопку проверяется поле