Я пытался предотвратить перенаправление, когда я возвращаю NotAuthorized IActionResult от контроллера, но независимо от моих попыток NotAuthorized переводится в Redirect.
Я пробовал то, что упоминается здесь (та же проблема, с использованием более старой бета-версии, я использую 1.0.0-rc1-final). У меня нет пространства имен Notifications (было удалено в rc1-final).
Это мой контроллер входа в систему:
[HttpPost]
[AllowAnonymous]
public async Task<IActionResult> Login(LoginViewModel model, string returnUrl = null)
{
if (ModelState.IsValid)
{
var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false);
if (result.Succeeded)
{
return Ok(model);
}
if (result.IsLockedOut)
{
return new HttpStatusCodeResult((int)HttpStatusCode.Forbidden);
}
else
{
return HttpUnauthorized();
}
}
return HttpUnauthorized();
}
В Startup.cs я пробовал варианты этого:
services.Configure<CookieAuthenticationOptions>(o =>
{
o.LoginPath = PathString.Empty;
o.ReturnUrlParameter = PathString.Empty;
o.AutomaticChallenge = false;
});
Каждый раз, когда логин не удался (пожалуйста, не обращайте внимания на то, что пароль возвращается на Ok) и должен привести к пустой странице 401, вместо этого я получаю перенаправление на / Account / Login. В чем тут фокус?