コード例 #1
0
        public async Task <ObjectResult> Login(LoginModel loginModel)
        {
            var user = await _userManager.FindByNameAsync(loginModel.Username);

            if (user == null || !await _userManager.CheckPasswordAsync(user, loginModel.Password))
            {
                return(new UnauthorizedObjectResult(new LoginResponse
                {
                    Username = loginModel.Username
                }));
            }

            var userRoles = await _userManager.GetRolesAsync(user);

            var token = _appSecurity.GetToken(user.Id, DateTime.Now, userRoles);

            return(new OkObjectResult(new LoginResponse
            {
                Username = loginModel.Username,
                Token = token
            }));
        }