public static IAppBuilder InitializeAll(this IAppBuilder builder) { ConfigurationCenter.Initialize(); CacheManager.Initialize(); builder = builder.UseExceptionHandler(); //application.RegisterGeneralControllers(RouteTable.Routes); //GlobalFilters.Filters.Add(new CompressFilter()); //bool enableActionDiagnoseFilter = bool.Parse(WebConfigurationManager.AppSettings["EnableActionDiagnoseFilter"] ?? bool.FalseString); //if (enableActionDiagnoseFilter) //{ // GlobalFilters.Filters.Add(new ActionDiagnoseFilter()); //} //bool enableActionLogFilter = bool.Parse(WebConfigurationManager.AppSettings["EnableActionLogFilter"] ?? bool.FalseString); //if (enableActionLogFilter) //{ // GlobalFilters.Filters.Add(new ActionLogFilter()); //} bool requestTrack = bool.Parse(ConfigurationCenter.Local["RequestTracker"] ?? bool.FalseString); if (requestTrack) { builder.Use <RequestTrackerMiddleware>(); } //bool responseCompression = bool.Parse(ConfigurationCenter.Local["ResponseCompression"] ?? bool.TrueString); //if (responseCompression) //{ // builder.Use<StaticCompressionMiddleware>(new StaticCompressionOptions()); //} builder = builder.UseStageMarker(PipelineStage.Authenticate); return(builder); }
public static void InitializeAll(this HttpApplication application) { application.RegisterGlobalExceptionHandler(); GlobalConfiguration.Configuration.Filters.Add(new WebApiGlobalExceptionFilterAttribute()); ConfigurationCenter.Initialize(true, HttpContext.Current.Server.MapPath("~")); application.RegisterGeneralControllers(RouteTable.Routes); CacheManager.Initialize(new AspNetCacheContainer(HttpContext.Current.Cache)); GlobalFilters.Filters.Add(new CompressFilter()); bool enableActionDiagnoseFilter = bool.Parse(ConfigurationCenter.Global["EnableActionDiagnoseFilter"] ?? bool.FalseString); if (enableActionDiagnoseFilter) { GlobalFilters.Filters.Add(new ActionDiagnoseFilter()); } bool enableActionLogFilter = bool.Parse(ConfigurationCenter.Global["EnableActionLogFilter"] ?? bool.FalseString); if (enableActionLogFilter) { GlobalFilters.Filters.Add(new ActionLogFilter()); } bool requestTrack = bool.Parse(ConfigurationCenter.Global["RequestTracker"] ?? bool.FalseString); if (requestTrack) { GlobalFilters.Filters.Add(new RequestTrackerFilter()); GlobalConfiguration.Configuration.Filters.Add(new WebApiRequestTrackerFilter()); } bool baiduYunGuanCe = bool.Parse(ConfigurationCenter.Global["EnableBaiduYunGuanCeFilter"] ?? bool.FalseString); if (baiduYunGuanCe) { GlobalFilters.Filters.Add(new BaiduYunguanceFilter()); } bool apiProxy = bool.Parse(ConfigurationCenter.Global["ApiProxy"] ?? bool.FalseString); if (apiProxy) { ApiProxyController.Enabled = true; } bool ignoreSSLValidation = bool.Parse(ConfigurationCenter.Global["IgnoreServerCertificateValidation"] ?? bool.TrueString); if (ignoreSSLValidation) { ServicePointManager.ServerCertificateValidationCallback += (mender, certificate, chain, sslPolicyErrors) => true; } s_allowOrigins = (ConfigurationCenter.Global["AllowOrigins"] ?? "") .Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries) .Select(t => t.Trim()) .Where(t => t != string.Empty) .ToList(); s_allowMethods = (ConfigurationCenter.Global["AllowMethods"] ?? "GET,POST,PUT,PATCH,CREATE,DELETE,OPTIONS"); s_allowHeaders = (ConfigurationCenter.Global["AllowHeaders"] ?? "AccessToken,Content-Type,Accept"); if (s_allowOrigins.Any()) { var corsFilter = new CorsFilter() { AllowAnyOrigin = s_allowOrigins.Any(t => t == "*"), AllowOrigins = s_allowOrigins, AllowMethods = s_allowMethods, AllowHeaders = s_allowHeaders, }; GlobalFilters.Filters.Add(corsFilter); var webApiCorsFilter = new WebApiCorsFilter() { AllowAnyOrigin = s_allowOrigins.Any(t => t == "*"), AllowOrigins = s_allowOrigins, AllowMethods = s_allowMethods, AllowHeaders = s_allowHeaders, }; GlobalConfiguration.Configuration.Filters.Add(webApiCorsFilter); } }