首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OWIN Url路由

OWIN Url路由
EN

Stack Overflow用户
提问于 2020-05-01 14:51:01
回答 1查看 331关注 0票数 0

我对OWIN非常陌生,并试图了解OWIN映射扩展是如何工作的。我创建了一个空的ASP.Net项目,并引用了Owin、Microsoft.Owin、Microsoft.Owin.Host.SystemWeb包。

我创建了一个类似于bello的中间件类。

代码语言:javascript
复制
public class TempMiddleware : OwinMiddleware
{
    public TempMiddleware(OwinMiddleware next) 
        : base(next)
    {
    }

    public override Task Invoke(IOwinContext context)
    {
        return context.Response.WriteAsync("Response from Temp Middleware");
    }
}

这是我的OWIN启动类。

代码语言:javascript
复制
public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        app.Map("/temp", config => config.Use<TempMiddleware>());
    }
}

我对门户项目进行了如下配置。

当我从VS2017运行该项目时,它返回HTTP 403.14 -禁止的页面。

实际上我的期望是,它应该在浏览器上显示"Response from Temp Middleware“消息。

我的代码中有什么问题吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-15 20:31:23

Map()用于对管道进行分支。在委托中,也就是Map()方法的第二个参数中,您需要运行一个中间件。

您的配置代码应该是这样的:

代码语言:javascript
复制
public void Configuration(IAppBuilder app)
{
    app.Map("/temp", config => config.Run(async context => 
    {
        await context.Response.WriteAsync("Response from Temp Middleware");
    }));
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61538069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档