OWIN中间件:查找请求是否具有匹配的路由

时间:2015-12-21 14:24:33

标签: asp.net-web-api owin asp.net-web-api-routing owin-middleware

我们想编写一个OWIN中间件来查看当前请求并查看它是否与任何映射路由匹配(我们使用web.api,因此我们使用httpRouteCollection.MapHttpRoute方法注册路由。

如果当前请求与任何已知配置的路由不匹配,我们希望使用自定义404消息拒绝它。

是否可以从OWIN上下文确定当前请求是否与定义的路由之一匹配?

1 个答案:

答案 0 :(得分:3)

简短的回答是,不,你不能。 OWIN中间件并不是为此而设计的。它独立于应用程序。

如果您想要自定义404错误页面,可以在web.config文件中添加一个设置来为您执行此操作:

<configuration>
    <system.webServer>
        <httpErrors>
            <error statusCode="404" path="/somedir/oops404.htm" responseMode="ExecuteURL" />
        </httpErrors>
    </system.webServer>
</configuration>

希望有所帮助。