- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Owin Startup 类,它注册了一个 WebApi Controller 操作并使用 IAppBuilder.UseWebApi 将其 Hook 。我的路由模板是 /api/packages/{id}/{version}
,其中 version
可能包含句点(如 1.0.0
)。
这适用于自托管,但当我尝试使用 Microsoft.Owin.Host.SystemWeb 在 IIS 中运行我的代码时,当路径看起来像静态内容请求时,某些东西阻止我的操作被调用。
例如,GET/api/packages/Foo/1.0
在自主机上工作,但在 IIS 上导致 404。
如果我在 GET/api/packages/Foo/1.0/
中添加尾部斜杠,它在自主机和 IIS 中都有效。
似乎 UseWebApi 方法中的某些东西正在阻止 Web Api 处理看起来像带有扩展名的文件的请求。
其他 Owin 中间件看到了所有这些请求,所以我知道请求正在进入 Owin 管道,但是 UseWebApi
方法似乎忽略了一些请求。
相关:Owin Middleware results in 404 on server , Owin hosted on IIS doesn't capture URLs with Dot "."
最佳答案
进一步调试后,在 WebApi 中接线之前,我正在为 SignalR 映射另一个 OWIN 中间件,顺序似乎在 Web 主机上很重要,但在 Self-Host 上无关紧要。更改顺序为我解决了这个问题。
更新:当使用 Owin.Host.SystemWeb 时,IAppBuilder.UseStageMarker(PipelineStage.MapHandler)
应该在任何希望处理请求的中间件之后被调用用于静态内容。
参见 https://katanaproject.codeplex.com/wikipage?title=Static%20Files%20on%20IIS和 http://www.asp.net/aspnet/overview/owin-and-katana/owin-middleware-in-the-iis-integrated-pipeline .
关于iis - SystemWeb Host : IAppBuilder. UseWebApi 忽略带有扩展名的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24620448/
我有一个 Owin Startup 类,它注册了一个 WebApi Controller 操作并使用 IAppBuilder.UseWebApi 将其 Hook 。我的路由模板是 /api/packa
我正在学习 Pluralsight 类(class) on OAuth2并在解决方案中添加了一个项目。 我使用了一个新的 Asp.Net 4.5.2 空模板,我已将 SSL 设置为 true。 我将框
我已经设法让 Katana/OWIN 使用 HttpListener host 在 Mono 上运行. 我现在正在尝试 Microsoft.Owin.Host.SystemWeb在 Mono 和 XS
我正在创建使用 .NET 中的 Identity 2.1.0 框架的应用程序。我在 Visual Studio 2015 中作为空 Web 应用程序(模板)启动了项目。现在,我在项目中使用 Micro
我已经阅读了很多关于此的帖子,但仍然无法使其正常工作。我正在使用 Visual Studio 2013。我创建了一个新的 MVC 5 项目,并认为使用新的 facebook 登录集成会很酷。它在我的
我从一个只有 Web API 的空解决方案开始。 (没有 mvc) 使用 NuGet 将所有内置包升级到最新的稳定版。 然后, Install-Package Microsoft.AspNet.Web
我有一个项目使用 Microsoft.Owin.Host.SystemWeb 在 Owin 中托管的 AspNet WebApi 2,它使用 Owin 中间件并通过 httpConfiguration
据我所知Microsoft.Owin.Host.SystemWeb允许我在 IIS 上运行 OWIN 应用程序,但今天我发现了另一个名为 Microsoft.Owin.Host.IIS 的包(据我从其
我想在 IIS 和自托管上下文中托管我的 WebApi 项目。在我的研究中,对于 IIS 托管,我发现了这两个包: 1- Microsoft.AspNet.WebApi.WebHost ( src )
我是一名优秀的程序员,十分优秀!