.Netcore中编写Middleware,如何传递参数?

2020-07-13 16:40发布

1.定义Middleware,在ctor中指定Action和Type类型的参数

2.在extension中调用app.UseMiddleware,并传递参数

3.Startup.cs中注册中间件

4.Main函数报错

高人隐士帮帮忙,给点建议

3条回答
可以哭但决不认输i
2楼-- · 2020-07-13 16:57

Middleware的构造函数不能传递null,所以我把Action和Type的实现都拿到extension中,在运行,ok了

查看更多
姐就是有狂的资本
3楼-- · 2020-07-13 16:58

InvokeAsync(HttpContext context,Action<WeChatMessager> onMessageReceived, IMessageQueue messageQueue)

app.UseMiddleware<LazyWeChatMiddleware>();

查看更多
家丑人穷心不美
4楼-- · 2020-07-13 17:13

中间件类似aop,当请求过来作为统一处理的组件,跟httpmodule差不多,传递参数没理解,一般来说,传过来一个httpcontext,每个中间件都能处理这个httpcontext里面的东西

查看更多
登录 后发表回答