ASP.NET Core 创建 Web API 的核心是 Controller + [ApiController] + 模型绑定 + 内置 JSON 序列化;需新建项目、添加带特性的控制器、可选配置 JSON 和 CORS。
ASP.NET Core 创建 Web API 很简单,核心是用 Controller + [ApiController] 特性 + 模型绑定 + 内置 JSON 序列化,不需要额外装包(.NET 6+ 默认内置)。
用 CLI 或 Visual Studio 都行,推荐命令行快速启动:
https://localhost:5001/weatherforecast 就能看到默认 API注意:.
NET 6+ 模板默认启用 minimal hosting 模式(Program.cs 里一行 builder.Build()),但 Controller 方式仍完全支持,无需改写。
右键项目 → 添加 → 新建控制器 → 选择 “API Controller with actions, using Entity Framework”(如果连数据库)或 “API Controller – Empty”(纯接口)。
[ApiController] 和 [Route("api/[controller]")]
[HttpGet]、[HttpPost]
IActionResult 或具体模型(如 Task> ),框架会自动序列化为 JSON示例:
[ApiController]
[Route("api/[controller]")]
public class ProductsController : ControllerBase
{
[HttpGet]
public IActionResult Get() => Ok(new[] { new { Id = 1, Name = "Laptop" } });
[HttpPost]
public IActionResult Create([FromBody] Product product)
{
// 处理逻辑
return CreatedAtAction(nameof(Get), new { id = 1 }, product);
}
}
.NET 6+ 默认用 System.Text.Json,若需兼容旧习惯(如驼峰命名、忽略 null 值),在 Program.cs 中配置:
ReferenceHandler 或 Converters
前端调用本地 API 时浏览器会拦截,加一段配置即可:
Program.cs 中添加服务:builder.Services.AddCors();
AllowAnyOrigin() 为具体域名基本上就这些。不复杂但容易忽略路由匹配、模型绑定失败静默返回 400、以及没开 CORS 导致前端收不到响应——检查这几个点,API 就能稳稳跑起来。