如何在asp.net核心中从客户端调用web api方法?
Posted
技术标签:
【中文标题】如何在asp.net核心中从客户端调用web api方法?【英文标题】:How to invoke web api method from client side in asp.net core? 【发布时间】:2019-09-14 05:04:08 【问题描述】:我有一个示例 asp.net 核心应用程序,我在创建项目时选择了 MVC 模板。现在我添加了一个新的 API 控制器,如下所示。如何从 jquery 调用这个 web api?
我尝试了不起作用的“api/TestAPI/GetTest”。我得到 404 Not found 错误。感谢您的任何建议。
[Route("api/TestAPI")]
[ApiController]
public class TestAPIController : ControllerBase
[HttpGet]
public ActionResult GetTest()
return new OkResult();
【问题讨论】:
【参考方案1】:您的问题与 asp net core 如何路由请求有关。如果您想使用操作方法的名称,您可以像之前在控制器上一样使用 Route
属性,但添加操作部分:
[Route("api/[controller]/[action]")]
public class TestAPIController : ControllerBase
【讨论】:
【参考方案2】:使用当前配置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核心中从客户端调用web api方法?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 asp.net 核心中从返回零计数的主体正确映射数组
如何在 asp.net 中从 javascript 调用代码隐藏函数?
收到错误“JSONP 注入脚本未调用回调。”使用 Angular 2 和服务器 ASP.NET 核心
如何从 ASP.NET 核心 mvc 向 asp.net 核心中的 Web API 发出 PUT 请求?