asp.net core webapi - 在 IIS Express 中调试意外关闭

问题描述

AuthController - 身份验证操作

[HttpPost("authenticate")]
        public async Task<ActionResult<Login>> Authenticate([FromBody] Login login)
        {
            // login will come in from the device with basic auth
            var c = 0;
            string token = string.Empty;
            
            try
            {

                bool isAuth = _unitOfWork.Logins.GetAuthenticateUser(username,password);
                if(isAuth == false)
                {
                    var msg = "Authentication Failed";
                    login.Message = msg;
                    return new JsonResult(login);
                }

                Jwt j = new Jwt(_unitOfWork);
                try
                {
                    login.Token = j.Createtoken(username);
                    SessionModel session = new SessionModel();
                    session.SessionStart = DateTime.Now;
                    login.SessionStart = session.SessionStart;
                    session.UserName = username;
                    session.Token = login.Token;
                    await _unitOfWork.Sessions.AddAsync(session);
                }
                catch (Exception ex)
                {
                    //delete session if there is jwt error
                    
                    var msg = $"Error message from create token - Inner Exception: {ex.InnerException} Exception Message: {ex.Message} Source: {ex.source}";
                    
                    return UnAuthorized;
                }

            }
            catch (Exception ex)
            {
                var msg = $"Error message from Header Auth decode - Inner Exception: {ex.InnerException} Exception Message: {ex.Message} Source: {ex.source}";
                login.Message = msg;
                return new JsonResult(login);
            }
            //return login obj with token,msg,session datetime
            return new JsonResult(login);
        }

以上代码都按预期运行,直到到达最后一行 return new JsonResult(login); 此时,Visual Studio退出 IIS Express 中的调试,而不会发出警告或错误。 我正在使用 Postman 测试 API。

当我在 Postman 中执行时,我得到状态 200,但我没有得到预期的 Json 结果。这就是 Visual Studio 退出并终止调试会话的时刻。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)