コード例 #1
0
        public async Task <JsonResult> LoginGetToken([FromBody] JWTUserModel _user)
        {
            var _return   = await new DB_User().DBLoginAsync(_user);
            var ipaddress = HttpContext.Connection.RemoteIpAddress.ToIPv4String();
            var userAgent = HttpContext.Request.Headers["User-Agent"];
            var agent     = new UserAgent(userAgent);
            var Browser   = $"{agent.Browser?.Name} {agent.Browser?.Version}";
            var OS        = $"{agent.OS?.Name} {agent.OS?.Version}";

            await new DB_Log().SetOperatingLogAsync(new Operatinginfo
            {
                UserID    = _user.id,
                Operating = "登录",
                Date      = DateTime.Now.ToString(),
                UserName  = _user.Name,
                ip        = ipaddress,
                Browser   = Browser,
                OS        = OS,
                state     = _return != null ? 200 : 500,
                Details   = _return != null ? "通过登录授权" : "未通过登录授权"
            });
            var _token = "";

            if (_return != null && !string.IsNullOrEmpty(_return.id.ToString()))
            {
                _token = _tokenServic.GetToken(_user).AESEncrypt();
                HttpContext.AddCookie(CoreConfiguration.JwtCookiesTokenKey, _token);
                return(new JsonResult(new { Success = true, Message = "登录成功", access_token = _token }));
            }
            return(new JsonResult(new { Success = false, Message = "用户名或密码不正确!" }));
        }