Beispiel #1
0
        public void PreConfigure(IAppHost appHost)
        {
            var debug = appHost.AppSettings.Get("debug", appHost.GetHostingEnvironment().IsDevelopment());

            appHost.Plugins.Add(new SharpPagesFeature {
                EnableSpaFallback = true,
                // Args = { ["connect"] = "https://localhost:5001" } //test ?connect={url} import scheme
            });

            var sites = StudioServices.LoadAppSettings();

            appHost.Plugins.Add(new DesktopFeature {
                AccessRole = debug
                    ? RoleNames.AllowAnon
                    : RoleNames.Admin,
                ImportParams =
                {
                    "debug",
                    "connect",
                },
                ProxyConfigs = sites.Keys.Map(baseUrl => new Uri(baseUrl))
                               .Map(uri => new ProxyConfig {
                    Scheme        = uri.Scheme,
                    TargetScheme  = uri.Scheme,
                    Domain        = uri.Host,
                    AllowCors     = true,
                    IgnoreHeaders = { "X-Frame-Options", "Content-Security-Policy" },
                })
            });
        }
    public override void Configure(Container container)
    {
        Env.StrictMode = true;
        SetConfig(new HostConfig
        {
            DebugMode        = AppSettings.Get("debug", HostingEnvironment.IsDevelopment()),
            UseSecureCookies = true,
            AddRedirectParamsToQueryString = true,
        });

        if (Config.DebugMode)
        {
            //generate types
            RegisterService <GetCrudEventsService>("/crudevents/{Model}");
            RegisterService <GetValidationRulesService>("/validation/rules/{Type}");
            RegisterService <ModifyValidationRulesService>("/validation/rules");
            RegisterService <AdminUsersService>("/ss_admin/users");
        }

        Plugins.Add(new SessionFeature()); // store client auth in session
        // DartGenerator.ArrayTypes;


        Plugins.Add(new SharpPagesFeature {
            EnableSpaFallback = true,
            ScriptMethods     = { new AppScripts() }
            // Args = { ["connect"] = "https://localhost:5001" } //test ?connect={url} import scheme
        });

        var sites = StudioServices.LoadAppSettings();

        Plugins.Add(new DesktopFeature {
            AccessRole = Config.DebugMode
                ? RoleNames.AllowAnon
                : RoleNames.Admin,
            ImportParams =
            {
                "debug",
                "connect",
            },
            ProxyConfigs = sites.Keys.Map(baseUrl => new Uri(baseUrl))
                           .Map(uri => new ProxyConfig {
                Scheme        = uri.Scheme,
                TargetScheme  = uri.Scheme,
                Domain        = uri.Host,
                AllowCors     = true,
                IgnoreHeaders = { "X-Frame-Options", "Content-Security-Policy" },
            })
        });
    }