C# owin web api 路由索引页
C# owin web api route index page
http://localhost:2000/api/{Controller}
我需要创建索引页。
URI : http://localhost:2000/api
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "api",
routeTemplate: "api"
);
还有 api
[RoutePrefix("api")]
public class Api
{
[HttpGet]
public HttpResponseMessage Get()
{
var result = new HttpResponseMessage(HttpStatusCode.OK);
result.Content = new ByteArrayContent(Encoding.ASCII.GetBytes("API"));
return result;
}
}
但是当我打开 http://localhost:2000/api
时,它不起作用。
找不到与请求 URI http://localhost:2000/api
匹配的 HTTP 资源。
需要确保您遵循 API 控制器的建议语法。
[RoutePrefix("api")]
public class MyApiController: ApiController {
[HttpGet]
[Route("")] // GET api
public IHttpActionResult Get() {
return Ok("API");
}
}
其中包括让您的控制器派生自 ApiController
。
如果使用带路由前缀的属性路由,您仍然需要在操作上提供路由。
[Route("")]
在上面的这种情况下将作为该控制器的默认路由。
http://localhost:2000/api/{Controller}
我需要创建索引页。
URI : http://localhost:2000/api
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "api",
routeTemplate: "api"
);
还有 api
[RoutePrefix("api")]
public class Api
{
[HttpGet]
public HttpResponseMessage Get()
{
var result = new HttpResponseMessage(HttpStatusCode.OK);
result.Content = new ByteArrayContent(Encoding.ASCII.GetBytes("API"));
return result;
}
}
但是当我打开 http://localhost:2000/api
时,它不起作用。
找不到与请求 URI http://localhost:2000/api
匹配的 HTTP 资源。
需要确保您遵循 API 控制器的建议语法。
[RoutePrefix("api")]
public class MyApiController: ApiController {
[HttpGet]
[Route("")] // GET api
public IHttpActionResult Get() {
return Ok("API");
}
}
其中包括让您的控制器派生自 ApiController
。
如果使用带路由前缀的属性路由,您仍然需要在操作上提供路由。
[Route("")]
在上面的这种情况下将作为该控制器的默认路由。