本机的环境是.Net 5.0.203和Microsoft Visual Studio Community 2019 16.9.5.我们先新建一个WebApi项目,这里我们选择新建一个ASP.NET Core Web API模版项目
然后下一步,配置项目,输入项目名称,
继续下一步,在目标框架选择.NET5(当前),下方会多出一个勾选项启用OpenAPI支持
此时,我们可以看到,项目已经为我们自动引入了Swashbuckle.AspNetCore(5.6.3)的包,并在Startup.cs中也加入相应的引用代码,在launchSettings.json中也有默认启动页面
此时我们运行该项目,会自动打开swagger的页面
现在,我们假设需要做一个登陆接口,接口路径是http://{ip}/api/user/login,这里先新建一个空的UserController,
代码如下:
namespace DemoWebApi.Controllers{
[Route("api/[controller]")] [ApiController]
public class UserController : ControllerBase {
[HttpPost("login")]
public IActionResult Login(string UserName, string Pwd) {
if (string.IsNullOrEmpty(UserName) || string.IsNullOrEmpty(Pwd)) { return BadRequest("用户名密码必须传");
}
if (UserName == "admin" && Pwd == "123456") {
return Ok("登陆成功"); }
return NotFound("未找到该用户"); } }}
这里的[Route("api/[controller]")]是路由的路径[controller]会去匹配UserController
的名字,我们来看看最终效果