常用的 AspNetCore 项目中间件有这些,调用顺序如下图所示:
最后的 Endpoint 就是最终生成响应的中间件。
Configure调用如下:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "Hero.Api v1"));
}
app.UseExceptionHandler();//异常处理扩展程序中间件
app.UseHsts();//HTTP 严格传输安全中间件
app.UseHttpsRedirection();//HTTPS重定向中间件
app.UseStaticFiles();//静态文件中间件
app.UseRouting();//路由扩展中间件
app.UseCors();//跨域中间件
app.UseAuthorization();//身份认证中间件
app.UseAuthorization();//权限认证中间件
//app.UseLwpoor();//自定义中间件
//app.UseJwt();//自定义中间件
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}