Asp.net 为什么我的中间件不能工作?
我尝试添加自己的中间件,但它不起作用:-)Asp.net 为什么我的中间件不能工作?,asp.net,asp.net-mvc,owin-middleware,Asp.net,Asp.net Mvc,Owin Middleware,我尝试添加自己的中间件,但它不起作用:-) 公共部分类启动 { 公共无效配置(IAppBuilder应用程序) { System.Diagnostics.Debug.WriteLine(“OWIN正在工作”); app.Use(); } } 公共类定制中间件 { 公共异步任务调用(HttpContext上下文) { 字符串标记=context.Request.Headers[“Authorization”]; } } WriteLine是这样的,它会根据服务器的请求输入配置,但我的Custom
公共部分类启动
{
公共无效配置(IAppBuilder应用程序)
{
System.Diagnostics.Debug.WriteLine(“OWIN正在工作”);
app.Use();
}
}
公共类定制中间件
{
公共异步任务调用(HttpContext上下文)
{
字符串标记=context.Request.Headers[“Authorization”];
}
}
WriteLine是这样的,它会根据服务器的请求输入配置,但我的CustomMiddleware Invoke不会被触发
有什么线索吗?你需要一个构造函数,让下一个
委托
因此,您的代码应按如下所示进行更改:
public class CustomMiddleware
{
private readonly RequestDelegate _next;
public CustomMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
string token = context.Request.Headers["Authorization"];
await _next();
}
}
在CustomMiddleware
类中应该有一个构造函数,它接受下一个中间件项并按顺序调用它。否则,你的管道就停在这里了。我怎么。。。?我只是想创建一个中间件来检查是否设置了头内容类型。如果不返回400,这是针对ASP.Net核心的吗?纯“ASP.Net mvc”
public class CustomMiddleware
{
private readonly RequestDelegate _next;
public CustomMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
string token = context.Request.Headers["Authorization"];
await _next();
}
}