. net Идентичность SignInManager и HttpContext.User.Identity - PullRequest
0 голосов
/ 30 апреля 2020

в методе контроллера, который я вызываю:

SignInResult result = await _signInManager.PasswordSignInAsync(username, password, false, false);

он успешно выполняет вход в систему, но сразу после этого (при выполнении того же метода), если я проверяю содержимое HttpContext.User.Identity этот объект пуст.

Если я вызываю другой метод API и проверяю содержимое HttpContext.User.Identity, это время правильно заполнено зарегистрированной информацией о пользователе.

Почему это видно только для Последовательные звонки и как я могу получить личность сразу после (тем же способом) логина _signInManager.PasswordSignInAsync

1 Ответ

0 голосов
/ 02 мая 2020

User устанавливается в AuthenticationMiddleware , который выполняется перед контроллерами (см. Порядок промежуточного программного обеспечения ).

Поскольку вы можете проверить, входит ли логин успешно, у вас все будет в порядке, просто получив пользователя, например, используя UserManager :

if (result.Succeeded)
{
    var user = await _userManager.FindByNameAsync(username);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...