【问题标题】:Web Api Route Attributes not matching on remote serverWeb Api 路由属性在远程服务器上不匹配
【发布时间】:2015-04-20 11:09:22
【问题描述】:

我们有一个 API,使用 Attributes 进行路由,并首先在我们的启动方法中注册 config.MapHttpAttributeRoutes();

这在本地运行良好。

但是在测试环境中,Api 路由不匹配请求,而是尝试通过默认 MVC 路由器进行匹配。默认的 MVC 路由是在我们的启动方法结束时注册的。

我已经三次检查了配置转换,甚至是部署的 web.config,以确保没有 url 重写妨碍。

请求是简单的 JSON 请求。

任何人有任何其他可能导致 Api 路由仅在远程环境中被忽略的指针吗?

谢谢

【问题讨论】:

  • 尝试注释掉其他路由代码。
  • 您是在 IIS 中托管还是自托管?如果在 IIS 中,有各种配置点可能会影响它,例如 URL 重写。尝试部署到新站点而不是现有站点。还有一个很好的 nuget 包,叫做 RouteDebugger,它可能会提供一些见解
  • @heymega Azure 网站 - IIS。
  • @sallushan - 干杯,但这不是路由的顺序,因为 WebApi 先注册并在本地工作。

标签: asp.net .net json asp.net-mvc asp.net-web-api


【解决方案1】:

原来是由于远程服务器上 bin 文件夹中的旧库造成的。

这里的教训是确保在构建过程中删除的文件也被删除,或者手动删除它们。

【讨论】:

    猜你喜欢
    • 2019-11-25
    • 2017-11-05
    • 1970-01-01
    • 2017-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多