AspNetCore的中间件(MiddleWare)
1.作用:处理http请求的管道,处理权限验证等
2.流程
日志->静态文件->MVC(可能短路)
特点
- 可同时被访问和请求
- 可以处理请求后,然后将请求传递给下一个中间件
- 可以处理请求后,并使管道短路
例如MVC可以进行短路,不传送给下一个中间件,并进行反传 - 可以处理传出响应
- 中间件是按添加的顺序执行的
3.配置请求处理管道(通过app.run)
代码
正常(不能继续执行app.Run),只会执行第一个app.Run
继续执行下一个中间件(使用App.Use,传入一个可执行的委托,从而执行下一个)
中间件的处理流程:
ASP.NET Core 中间件(Middleware)详解
4.配置静态文件访问
一.概括
二.配置静态文件中间件:app.UseStaticFiles()
三.配置默认文件中间件:
app.UseDefaultFiles()
使用系统默认文件 index.html index.htm default.html等
一定要在静态文件中间件之前
只是路径重写器,所以要卸载
代码
四.配置目录访问中间件
静态文件中间件,目录访问中间件,默认文件中间件的结合,但是不推荐使用
五.配置异常中间件(一般系统会默认配置)
app.UseDeveloperExceptionPage()
app.UseDeveloperExceptionPage(developerExceptionPageOptions)
PS:尽可能提早注入,以防其他中间件异常时可以提示