У меня есть приложение с Rails в качестве бэкэнда и React в качестве внешнего интерфейса.Я пытаюсь обработать ошибки чередования на стороне сервера и вывести любую ошибку путем обновления моего состояния в клиенте.
вот код в моем методе контроллера:
def create
# here some code to handle payment...
rescue Stripe::CardError => e
render json: e.json_body[:error][:message], status: 422
end
и моя функция реагирования, которая обрабатывает ответ:
axios.post("/orders"})
.then(res => {
this.setState({
hasOrdered: true,
orderSuccess: true,
loading: false
});
})
.catch(err => {
console.log(err);
this.setState({
loading: false,
error: err
});
});
вывод console.log(err)
прост: Error: Request failed with status code 422
тогда как ответ, который я получаю через сеть:

И мне нужно обновить состояние с помощью «На вашей карте недостаточно средств."
Как я могу это сделать?