C# 如何在asp.net内核中从客户端调用web api方法?
我有一个asp.net核心应用程序示例,在创建项目时选择了MVC模板。现在我添加了一个新的API控制器,如下所示。如何从jquery调用这个web api 我尝试了“api/TestAPI/GetTest”,但它不起作用。我得到404找不到错误。谢谢你的建议C# 如何在asp.net内核中从客户端调用web api方法?,c#,jquery,asp.net-mvc,asp.net-web-api,asp.net-core,C#,Jquery,Asp.net Mvc,Asp.net Web Api,Asp.net Core,我有一个asp.net核心应用程序示例,在创建项目时选择了MVC模板。现在我添加了一个新的API控制器,如下所示。如何从jquery调用这个web api 我尝试了“api/TestAPI/GetTest”,但它不起作用。我得到404找不到错误。谢谢你的建议 [Route("api/TestAPI")] [ApiController] public class TestAPIController : ControllerBase { [HttpGet] public Actio
[Route("api/TestAPI")]
[ApiController]
public class TestAPIController : ControllerBase
{
[HttpGet]
public ActionResult GetTest()
{
return new OkResult();
}
}
使用当前配置
GET
请求api/TestAPI
url将点击GetTest
操作。如果要使用api/TestAPI/GetTest
url,请添加GetTest
路由到操作
[HttpGet]
[Route("GetTest")]
public ActionResult GetTest()
{
return new OkResult();
}
或者使用快捷方式
[HttpGet("GetTest")]
public ActionResult GetTest()
{
return new OkResult();
}
您的问题与asp net core如何路由请求有关。如果您想使用操作方法的名称,可以通过不同的方式配置如何处理控制器中操作的请求(有关更多信息,请访问此页),您可以像以前一样在控制器上使用
路由
属性,但添加动作部分:
[Route("api/[controller]/[action]")]
public class TestAPIController : ControllerBase