public static ResultDataWrapper <T> Create <T>(System.Net.HttpStatusCode code, string msg, string errormsg, T data) { ResultDataWrapper <T> resultData = new ResultDataWrapper <T>() { code = code, errormsg = errormsg, msg = msg, data = data }; return(resultData); }
public async Task ExecuteExceptionFilterAsync(System.Web.Http.Filters.HttpActionExecutedContext actionExecutedContext, CancellationToken cancellationToken) { string msg = "服务器忙,请联系管理员"; var error = actionExecutedContext.Exception as HaishanException; if (error != null) { msg = error.Message; } var data = ResultDataWrapper.Error(msg, actionExecutedContext.Exception.Message); actionExecutedContext.Response = actionExecutedContext.Request.CreateResponse(System.Net.HttpStatusCode.OK, data); }
public override void OnAuthorization(HttpActionContext actionContext) { var authHeader = actionContext.Request.Headers.FirstOrDefault(x => x.Key == "auth").Value; authHeader = authHeader ?? new List <string>(); string token = authHeader.FirstOrDefault(); if (string.IsNullOrEmpty(token)) { var data = ResultDataWrapper.Create(System.Net.HttpStatusCode.Unauthorized, "请登陆后再访问", string.Empty); actionContext.Response = actionContext.Request.CreateResponse(System.Net.HttpStatusCode.OK, data); return; } var userInfoWrapper = (UserInfoWrapper)actionContext.Request.GetDependencyScope().GetService(typeof(UserInfoWrapper)); userInfoWrapper.JwtData = JwtHelper.Decode <JwtData>(token); if (userInfoWrapper.JwtData.ValidateTimeout()) { var data = ResultDataWrapper.Create(System.Net.HttpStatusCode.Unauthorized, "登陆信息已过期", string.Empty); actionContext.Response = actionContext.Request.CreateResponse(System.Net.HttpStatusCode.OK, data); return; } userInfoWrapper.UserInfo = UserInfo.lstUserInfo.First(x => x.Id == userInfoWrapper.JwtData.Id); }