自托管 WebApi 路由问题
Self host WebApi Routing issues
我正在托管一个自托管的 WebApi,但我在路由方面遇到了困难。我想我配置好了,但我仍然得到 404 结果:
这是我的配置:
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional,
controller = "Values", action = "Index", });
服务器初始化:
string baseAddress = "http://localhost:1243";
var configuration = new HttpSelfHostConfiguration(baseAddress);
WebApiConfig.Register(configuration);
_server = new HttpSelfHostServer(configuration);
_server.OpenAsync().Wait();
那是我的控制器:
public class ValuesController : ApiController
{
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
}
在我的浏览器中,我正在尝试导航:
默认值错误:
默认值:新{ id = RouteParameter.Optional,
控制器 = "Values", action = "Index" });
我的控制器中没有任何调用 Index 的操作。所以它是..
花了一段时间,但我的同事最终发现了它。
我正在托管一个自托管的 WebApi,但我在路由方面遇到了困难。我想我配置好了,但我仍然得到 404 结果:
这是我的配置:
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional,
controller = "Values", action = "Index", });
服务器初始化:
string baseAddress = "http://localhost:1243";
var configuration = new HttpSelfHostConfiguration(baseAddress);
WebApiConfig.Register(configuration);
_server = new HttpSelfHostServer(configuration);
_server.OpenAsync().Wait();
那是我的控制器:
public class ValuesController : ApiController
{
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
}
在我的浏览器中,我正在尝试导航:
默认值错误:
默认值:新{ id = RouteParameter.Optional, 控制器 = "Values", action = "Index" });
我的控制器中没有任何调用 Index 的操作。所以它是.. 花了一段时间,但我的同事最终发现了它。