diff --git a/HttpClientStudy.UnitTest/NormalHttpClientTest.cs b/HttpClientStudy.UnitTest/NormalHttpClientTest.cs index 3e248cf..851cd06 100644 --- a/HttpClientStudy.UnitTest/NormalHttpClientTest.cs +++ b/HttpClientStudy.UnitTest/NormalHttpClientTest.cs @@ -14,7 +14,6 @@ namespace HttpClientStudy.UnitTest public class NormalHttpClientTest { private readonly ITestOutputHelper _logger; - private readonly string baseAddress = "http://localhost:5189"; public NormalHttpClientTest(ITestOutputHelper outputHelper) { diff --git a/HttpClientStudy.WebApp/Controllers/NormalController.cs b/HttpClientStudy.WebApp/Controllers/NormalController.cs index 8f8e0d9..c8bcc4c 100644 --- a/HttpClientStudy.WebApp/Controllers/NormalController.cs +++ b/HttpClientStudy.WebApp/Controllers/NormalController.cs @@ -1,4 +1,5 @@ -using HttpClientStudy.Service; +using HttpClientStudy.Model; +using HttpClientStudy.Service; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; @@ -25,7 +26,8 @@ namespace HttpClientStudy.WebApp.Controllers } /// - /// 获取账号 + /// 获取所有账号 + /// (无参数) /// /// [HttpGet] @@ -36,5 +38,95 @@ namespace HttpClientStudy.WebApp.Controllers var reslut = BaseResultUtil.Success(accounts); return Ok(reslut); } + + /// + /// 获取所有账号 + /// (默认方式参数) + /// + /// + [HttpGet] + public IActionResult GetAccount(int id) + { + var accounts = _accountService.GetAllAccounts(); + var account = accounts.FirstOrDefault(a => a.Id == id); + + var result = BaseResultUtil.Success(account); + return Ok(result); + } + + /// + /// 获取所有账号 + /// (路由参数) + /// + /// + [HttpGet] + [Route("{name}")] + public IActionResult GetAccount([FromRoute] string name) + { + var accounts = _accountService.GetAllAccounts(); + var account = accounts.FirstOrDefault(a => a.Name == name); + var result = BaseResultUtil.Success(accounts); + return Ok(result); + } + + /// + /// 获取所有账号 + /// (查询参数) + /// + /// + [HttpGet] + public IActionResult GetAccountByRole([FromQuery]string role) + { + var accounts = _accountService.GetAllAccounts(); + + accounts = accounts.Where(accounts => accounts.Role == role).ToList(); + + var result = BaseResultUtil.Success(accounts); + return Ok(result); + } + + /// + /// 获取所有账号 + /// (服务注入参数) + /// + /// + [HttpGet] + public IActionResult GetAccount([FromServices] Account account) + { + var accounts = _accountService.GetAllAccounts(); + + accounts = accounts.Where(accounts => accounts.Role == role).ToList(); + + var result = BaseResultUtil.Success(accounts); + return Ok(result); + } + + /// + /// Put请求 示例 + /// + /// + [HttpPut] + public IActionResult PutDemo(int id) + { + var accounts = _accountService.GetAllAccounts(); + var account = accounts.FirstOrDefault(a => a.Id == id); + + var result = BaseResultUtil.Success(account); + return Ok(result); + } + + /// + /// Head请求 示例 + /// + /// + [HttpHead] + public IActionResult HeadDemo(int id) + { + var accounts = _accountService.GetAllAccounts(); + var account = accounts.FirstOrDefault(a => a.Id == id); + + var result = BaseResultUtil.Success(account); + return Ok(result); + } } } diff --git a/HttpClientStudy.WebApp/Program.cs b/HttpClientStudy.WebApp/Program.cs index 17f6fce..033bb86 100644 --- a/HttpClientStudy.WebApp/Program.cs +++ b/HttpClientStudy.WebApp/Program.cs @@ -1,6 +1,7 @@ using System.Text; +using HttpClientStudy.Model; using HttpClientStudy.Service; using Microsoft.AspNetCore.Authentication.Cookies; @@ -114,7 +115,7 @@ namespace HttpClientStudy.WebApp setup.EnableAnnotations(); }); - //Cors + //CORS builder.Services.AddCors(option => { option.AddPolicy("AllowAll", builder => @@ -164,6 +165,8 @@ namespace HttpClientStudy.WebApp builder.Services.AddAuthorization(); //ͨ + + builder.Services.AddScoped(provider => new Account() { Id = 0, Name = "עʾ", Password = "123456", Role = "IoC" }); builder.Services.AddScoped(); #endregion