我有如下的 api 控制器路由:
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/v1.0/{controller}/{action}/{id}",
defaults: new { id = System.Web.Http.RouteParameter.Optional }
);
我做ajax查询:
'/api/v1.0/MyController/MyMethod'
当我在 localhost 上运行我的项目时,这很好用,但是当我尝试将我的项目部署到 IIS 时,我得到一个“404 not found”,因为路由已更改为/mysite/api/v1.0/MyController/MyMethod.
问题是,如何在没有 Ajax 查询中的站点名称绑定的情况下在 IIS 上正确运行我的项目,例如:mysite/api/v1.0/MyController/MyMethod
?我可以使用 IIS 重写器插件来做到这一点吗?