/// <summary>
        /// 方法执行后
        /// </summary>
        /// <param name="context"></param>
        public void OnActionExecuted(ActionExecutedContext context)
        {
            //_logger.LogInformation("START--记录开始");
            #region 记录API调用及响应时长等
            Stopwatch stopwach = context.RouteData.Values[DURATION] as Stopwatch;
            stopwach.Stop();
            var      dt   = DateTime.Now;
            TimeSpan time = stopwach.Elapsed;
            //记录访问
            var a = time.TotalSeconds;
            #region 异步记录api访问
            LogAPI      log     = new LogAPI();
            HttpRequest request = context.HttpContext.Request;
            log.BrowserType   = request.Headers["User-Agent"];
            log.ElapsedTime   = a;
            log.EndTime       = dt;
            log.ExceptionInfo = context.Exception?.Message;
            log.HttpMethod    = request.Method;
            log.LogLevel      = context.Exception != null? Enums.LogLevel.Error: Enums.LogLevel.Info;
            string from = "";
            //获得Controller类型
            Type t = context.Controller.GetType();
            //获得方法名
            string actionname = context.RouteData.Values["action"].ToString();

            //_logger.LogInformation($"{context.HttpContext.Request.Path.ToUriComponent()}--END--CurrentVisitToKey--{Current.VisitToKey}");
            //_logger.LogInformation($"{context.HttpContext.Request.Path.ToUriComponent()}--END--ConfigVisitTos--{Config.VisitTos.ToJsonString()}");

            if (IsHaveVisitToken(actionname, t))
            {
                try
                {
                    from = Config.VisitTos[Current.VisitToKey];
                }
                catch (Exception)
                {
                    from = Current.VisitToKey;
                }
            }
            log.From = from;
            StringBuilder rp = new StringBuilder();
            #region 获取请求参数
            if (request.Method.ToLower().AsStrs(new string[] { "put", "post" }))
            {
                try
                {
                    request.Body.Seek(0, SeekOrigin.Begin);
                    using (var reader = new StreamReader(request.Body, Encoding.UTF8))
                    {
                        var param = reader.ReadToEnd();
                        rp.Append(param);
                    }
                    request.Body.Seek(0, SeekOrigin.Begin);
                }
                catch (Exception) { }
                if (request.Query != null && request.Query.Count > 0)
                {
                    bool isHave = false;//是否已有数据
                    if (rp.Length > 0)
                    {
                        isHave = true;
                        rp.Insert(0, "{\"Body\":");
                        rp.Append("},\"Query\":");
                    }
                    rp.Append("{");
                    foreach (var item in request.Query.Keys)
                    {
                        rp.Append($"\"{item}\":\"{request.Query[item]}\",");
                    }
                    rp.Append("}");
                    if (isHave)
                    {
                        rp.Append("}");
                    }
                }
            }
            else if (request.Query != null && request.Query.Count > 0)
            {
                rp.Append("{");
                foreach (var item in request.Query.Keys)
                {
                    rp.Append($"\"{item}\":\"{request.Query[item]}\",");
                }
                rp.Append("}");
            }
            #endregion
            log.RequestParameter = rp.ToString().Replace(",}", "}");

            try
            {
                log.ResponseParameter = context.Result == null ? "" : context.Result.ToJsonString();
            }
            catch (Exception)
            {
                log.ResponseParameter = "";
            }
            log.ServiceIP = request.HttpContext.Connection.LocalIpAddress.MapToIPv4().ToString() + ":" + request.HttpContext.Connection.LocalPort;
            log.StartTime = dt - time;
            log.Url       = request.Path.ToUriComponent();
            log.UserId    = Current.UserId.HasValue?Current.UserId.Value:0;
            log.UserIP    = context.HttpContext?.Connection.RemoteIpAddress.ToString();
            log.UserName  = Current.UserJson.JsonToModelOrDefault <User>().Name;
            try
            {
                var config = ConfigurationBussiness.Init.Get(null);
                if (config != null && config.IsWriteAPILog)
                {
                    Task task = ServiceHelp.GetLogService.WriteApiLogAsync(log);
                }
            }
            catch (Exception)
            {
                Task task = ServiceHelp.GetLogService.WriteApiLogAsync(log);
            }
            #endregion
            #endregion

            #region 延长UserToken的过期时间
            if (Current.UserId.HasValue && !string.IsNullOrWhiteSpace(Current.UserToken) && Current.IsUserTokenExtensionTime)
            {
                //微信小程序延长30小时
                if (!string.IsNullOrWhiteSpace(Current.VisitToKey) && Current.VisitToKey == "yvan-wechat-little")
                {
                    var task1 = TokenHelp.ExtensionTimeToHoursAsync(Current.UserId.Value, Current.UserToken);
                }
                else
                {
                    var task1 = TokenHelp.ExtensionTimeAsync(Current.UserId.Value, Current.UserToken);
                }
            }
            #endregion

            //清空登录的数据
            if (context.Exception == null)
            {
                Current.Clear();
            }


            //_logger.LogInformation("END--异步记录api访问结束");
        }