Как обрабатывать ошибки входа в систему и отобразить их в модальном окне без перенаправления?Jquery

Программирование на jquery
Anonymous
Как обрабатывать ошибки входа в систему и отобразить их в модальном окне без перенаправления?

Сообщение Anonymous »

Все. У меня есть модальное окно и метод для входа в систему, то есть нет отдельного представления для страницы входа. Ошибка непосредственно в модальном окне без перенаправления. < /p>
Я решил эту проблему, используя < /p>
return Json
< /code>
Но тогда я обнаружил, что это не очень хороший вариант, и следует использовать перенаправление. < /p>
Но где мне следует использовать перенаправление, если есть Без страницы входа в систему?
сейчас работает. < /p>
[HttpPost("login")]
public IActionResult Login([FromForm] User user)
{
if (user.Login is not _login || user.Password is not _password)
return BadRequest("Invalid login or password");

var claims = new List { new(ClaimTypes.Name, user.Login) };
var claimsIdentity = new ClaimsIdentity(claims, "CookieAuth");
var claimsPrincipal = new ClaimsPrincipal(claimsIdentity);

HttpContext.SignInAsync("CookieAuth", claimsPrincipal).Wait();

return RedirectToAction("Browse", "Browse");
}
< /code>






Disk







Login







< /code>
js
$("#loginForm").on("submit", async function(e) {
e.preventDefault();
debugger;

const form = $(this);
const formData = new FormData(form[0]);

try {
const response = await fetch('/login', {
method: 'POST',
body: formData,
});

console.log(response.headers.get('location'))
if (response.status === 302) {
window.location.href = response.headers.get('location');
} else {
const errorText = await response.text();
$('#loginError').show().text(errorText);
}
} catch (error) {
console.log("Fetch error:", error);
$('#loginError').show().text('There was an error, try again.');
}
});
< /code>
I'm trying to display an error message in a modal window

Подробнее здесь: https://stackoverflow.com/questions/793 ... redirectin

Вернуться в «Jquery»