잘 작동하는 웹 API 프로젝트가 있습니다. MVC 프로젝트와 병합했는데 이제는 URI 매개 변수가있는 작업 만 작동합니다. 다른 모든 작업은 컨트롤러가 발견되지 않는 404 Not Found로 끝납니다.웹 API 라우팅 - URI 매개 변수가있는 작업 만 수행
http://localhost:2000/api/WikiPlan/SearchWikiPlans/baby
[AllowAnonymous]
[HttpGet]
[Route("SearchWikiPlans/{keyword}")]
[ResponseType(typeof(List<WikiPlanSearchResultViewModel>))]
public IHttpActionResult SearchWikiPlans(string keyword)
여기 하나입니다 :
이[Authorize]
[RoutePrefix("api/WikiPlan")]
public class WikiPlanController : ApiController
여기에 작동하는 작업입니다 : 여기
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Configure Web API to use only bearer token authentication.
config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
컨트롤러 클래스입니다 : 여기
내가 WebApiConfig에서 (표준 물건)가 무엇 그것은 작동하지 않습니다 (예전에는 프로젝트에서 사용 했었습니다) :
http://localhost:2000/api/WikiPlan/TopWikiPlans
[AllowAnonymous]
[HttpGet]
[Route("TopWikiPlans")]
[ResponseType(typeof(List<TopWikiPlan>))]
public IHttpActionResult TopWikiPlans()
무엇이 잘못 되었나요? 당신의 도움을 주셔서 감사합니다!
클래스 선언을하시기 바랍니다. – Dalorzo
요청한 URL은 무엇입니까? – Dalorzo
예 컨트롤러 클래스 – Dalorzo