我有一个示例asp.net核心应用程序,并且在创建项目时选择了MVC模板。现在,我添加了一个新的API控制器,如下所示。如何从jquery调用此网络api?
我尝试了不起作用的“ api / TestAPI / GetTest”。我收到404未找到错误。感谢您的任何建议。
[Route("api/TestAPI")]
[ApiController]
public class TestAPIController : ControllerBase
{
[HttpGet]
public ActionResult GetTest()
{
return new OkResult();
}
}
答案 0 :(得分:1)
在当前配置为GET
的URL中,请求api/TestAPI
会执行GetTest
动作。如果您想使用api/TestAPI/GetTest
网址,请添加GetTest
到操作的路由
[HttpGet]
[Route("GetTest")]
public ActionResult GetTest()
{
return new OkResult();
}
或使用快捷方式
[HttpGet("GetTest")]
public ActionResult GetTest()
{
return new OkResult();
}
答案 1 :(得分:1)
您的问题与asp net core如何路由请求有关。有多种方法可以配置如何处理对控制器中的操作的请求(有关更多信息,请访问此link),以防万一。使用操作方法的名称,可以像以前一样在控制器上使用Route
属性,但要添加操作部分:
[Route("api/[controller]/[action]")]
public class TestAPIController : ControllerBase