@@ -117,7 +117,9 @@ module Application =
117117 let middleware ( app : IApplicationBuilder ) = app.UseStaticFiles()
118118 let host ( builder : IWebHostBuilder ) =
119119 let p = Path.Combine( Directory.GetCurrentDirectory(), path)
120- builder.UseWebRoot p
120+ builder
121+ .UseWebRoot( p)
122+ .UseContentRoot( p)
121123 { state with
122124 AppConfigs = middleware:: state.AppConfigs
123125 HostConfigs = host:: state.HostConfigs
@@ -132,33 +134,35 @@ module Application =
132134
133135 { state with Pipelines = handler:: state.Pipelines}
134136
135- [<CustomOperation( " force_ssl" ) >]
136- member __.ForceSSL ( state : ApplicationState ) =
137- let middleware ( app : IApplicationBuilder ) =
137+ [<CustomOperation( " force_ssl" ) >]
138+ member __.ForceSSL ( state : ApplicationState ) =
139+ let middleware ( app : IApplicationBuilder ) =
138140 let opts = RewriteOptions() .AddRedirectToHttps()
139- app.UseRewriter opts
140-
141- { state with AppConfigs= middleware:: state.AppConfigs}
141+ app.UseRewriter opts
142142
143- [<CustomOperation( " use_cors" ) >]
144- member __.UseCors ( state : ApplicationState , policy : string , ( policyConfig : CorsPolicyBuilder -> unit ) ) =
143+ { state with AppConfigs= middleware:: state.AppConfigs}
144+
145+ [<CustomOperation( " use_cors" ) >]
146+ member __.UseCors ( state : ApplicationState , policy : string , ( policyConfig : CorsPolicyBuilder -> unit ) ) =
145147 let service ( s : IServiceCollection ) =
146- s.AddCors( fun o -> o.AddPolicy( policy, policyConfig) |> ignore)
147- let middleware ( app : IApplicationBuilder ) =
148- app.UseCors policy
148+ s.AddCors( fun o -> o.AddPolicy( policy, policyConfig) |> ignore)
149+ let middleware ( app : IApplicationBuilder ) =
150+ app.UseCors policy
149151
150152 { state with
151153 ServicesConfig = service:: state.ServicesConfig
152154 AppConfigs = middleware:: state.AppConfigs
153155 }
154- [<CustomOperation( " use_jwt_authentication" ) >]
155- member __.UseJWTAuth ( state : ApplicationState , secret : string , issuer : string ) =
156- let middleware ( app : IApplicationBuilder ) =
157- app.UseAuthentication()
156+ [<CustomOperation( " use_jwt_authentication" ) >]
157+ member __.UseJWTAuth ( state : ApplicationState , secret : string , issuer : string ) =
158+ let middleware ( app : IApplicationBuilder ) =
159+ app.UseAuthentication()
158160
159161 let service ( s : IServiceCollection ) =
160- s.AddAuthentication( JwtBearerDefaults.AuthenticationScheme)
161- .AddJwtBearer( fun opt ->
162+ s.AddAuthentication( fun cfg ->
163+ cfg.DefaultScheme <- JwtBearerDefaults.AuthenticationScheme
164+ cfg.DefaultChallengeScheme <- JwtBearerDefaults.AuthenticationScheme)
165+ .AddJwtBearer( fun opt ->
162166 let tvp = TokenValidationParameters()
163167 tvp.ValidateActor <- true
164168 tvp.ValidateAudience <- true
@@ -168,13 +172,13 @@ module Application =
168172 tvp.ValidAudience <- issuer
169173 tvp.IssuerSigningKey <- SymmetricSecurityKey( Text.Encoding.UTF8.GetBytes secret)
170174 opt.TokenValidationParameters <- tvp
171- ) |> ignore
172- s
175+ ) |> ignore
176+ s
173177
174178 { state with
175179 ServicesConfig = service:: state.ServicesConfig
176180 AppConfigs = middleware:: state.AppConfigs
177- }
181+ }
178182
179183 let application = ApplicationBuilder()
180184
0 commit comments