Я хотел бы сделать следующее:
Форма POST через fetch, тогда
Если ответом является сообщение об ошибке (res.json): оставайтесь на той же странице и alert(json.errorMsg)
Если ответ представляет собой перенаправление на другую страницу (res.redirect): перенаправление на новую страницу
Проблема в
1) Если я использую event.preventdefault()
, моя страницане перенаправляет
2) Если я не использую event.preventdefault()
, моя страница всегда перенаправляется (в json, если есть ошибка)
Вот сводка моего кода:
// Client side
form.addEventListener("submit", () => {
fetch(url, fetchData)
.then((res) => res.json()) // Transform the data into json
.then(function (data) {
alert(data); // Let the user know there was an error in Captcha or provided info
})
});
// Server side
app.post('/', (req, res) => {
if (err) {
console.error(err)
return res.json({ "success": false, "msg": err })
}
return res.redirect("/confirmation_page");
});