【发布时间】:2014-08-27 20:10:06
【问题描述】:
我在尝试访问我的 Web API 操作之一时收到 404 not found 错误:
我的 WebAPIConfig 中有:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
我有一个名为 OnSourceAPIController 的控制器和一个 GET 操作 ValidateServiceRequestAuto。
当我尝试访问时收到 404 错误:
http://localhost/api/OnSourceAPI/ValidateServiceRequestAuto
我的第一个猜测是我遇到了某种路由错误,但我为它创建了一个 mvc 控制器和一个索引页面,并且能够通过这个路由(api/controller/action)正常浏览那里。内置 api/help 页面甚至显示 /api/OnSourceAPI/ValidateServiceRequestAuto 作为我的 api 调用的路由。
我也尝试使用 WebAPIRouteDebugger 工具。当我使用
时,它给了我一个 000 404 not found 错误http://localhost/api/OnSourceAPI/ValidateServiceRequestAuto
,但如果我将 localhost 从前面拿掉并直接使用,实际上会给我正常的路由信息
api/OnSourceAPI/ValidateServiceRequestAuto as the URL...
任何指针将不胜感激。
【问题讨论】:
标签: asp.net-web-api asp.net-mvc-routing