【发布时间】:2014-10-29 23:41:15
【问题描述】:
string path = "/SomeSubPath";
app.Map(new PathString(path),
(application) =>
{
app.Run((ctx) =>
{
Debug.WriteLine("{0} : {1}", path, ctx.Request.Path);
return Task.FromResult(0);
});
});
app.Use(async (ctx, next) =>
{
var watch = new Stopwatch();
watch.Start();
await next();
watch.Stop();
Debug.WriteLine("Request handled in {0} [ms]", watch.ElapsedMilliseconds);
});
app.Use(async (ctx, next) =>
{
Debug.WriteLine("{0} : {1}", "/", ctx.Request.Path);
await next();
});
考虑上述管道配置。
在我的启动类中,我想将“SomeSubPath”映射到一个专有的中间件处理程序。 IE。以“/SomeSubPath”开头的请求应该由一些专有中间件处理,而所有其他请求应该由管道的其余部分处理。我正在使用here 中的 IAppBuilder.Map 扩展。令我惊讶的是,中间件正在拦截所有请求,阻止应用程序的其余部分处理这些请求。
- 为什么会这样?
- 我怎样才能做到这一点?
【问题讨论】:
-
有人吗?我正在为此苦苦挣扎:/