运行 WebAPI 的路径
Path to Run WebAPI
我很难用浏览器或 PostMan 运行 API。问题是路径,所以我得到 404 错误。
这是路径:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
还有网络API配置:
public static void Register(HttpConfiguration config)
{
config.EnableCors();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "v{version}/{controller}/{action}/{id}",
defaults: new {id = RouteParameter.Optional});
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
config.MessageHandlers.Add(new AuthHandler());
}
这是我需要的控制器方法 运行:
public class BankViewerController : ApiController
{
[HttpGet]
public List<BuilderList> GetBuilderList()
{
//......
}
}
我尝试的路径是:
http://localhost:62815/BankViewerController/GetBuilderList
它甚至没有到达方法的第一行,它给了我 404 错误,所以我很确定它是路径。
给定的路线模板:
routeTemplate: "v{version}/{controller}/{action}/{id}",
您调用了与模板不匹配的错误URL
http://localhost:62815/BankViewerController/GetBuilderList
您将需要
http://localhost:62815/v1/BankViewer/GetBuilderList
调用 URL 时从控制器名称中排除 Controller
。这是一个惯例。
我很难用浏览器或 PostMan 运行 API。问题是路径,所以我得到 404 错误。
这是路径:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
还有网络API配置:
public static void Register(HttpConfiguration config)
{
config.EnableCors();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "v{version}/{controller}/{action}/{id}",
defaults: new {id = RouteParameter.Optional});
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
config.MessageHandlers.Add(new AuthHandler());
}
这是我需要的控制器方法 运行:
public class BankViewerController : ApiController
{
[HttpGet]
public List<BuilderList> GetBuilderList()
{
//......
}
}
我尝试的路径是:
http://localhost:62815/BankViewerController/GetBuilderList
它甚至没有到达方法的第一行,它给了我 404 错误,所以我很确定它是路径。
给定的路线模板:
routeTemplate: "v{version}/{controller}/{action}/{id}",
您调用了与模板不匹配的错误URL
http://localhost:62815/BankViewerController/GetBuilderList
您将需要
http://localhost:62815/v1/BankViewer/GetBuilderList
调用 URL 时从控制器名称中排除 Controller
。这是一个惯例。