diff --git a/HttpClientStudy.WebApp/Controllers/NormalController.cs b/HttpClientStudy.WebApp/Controllers/NormalController.cs
index fb2bec4..9e84770 100644
--- a/HttpClientStudy.WebApp/Controllers/NormalController.cs
+++ b/HttpClientStudy.WebApp/Controllers/NormalController.cs
@@ -1,4 +1,6 @@
-using HttpClientStudy.Model;
+using System.Net;
+
+using HttpClientStudy.Model;
using HttpClientStudy.Service;
using Microsoft.AspNetCore.Http;
@@ -56,32 +58,32 @@ namespace HttpClientStudy.WebApp.Controllers
///
/// 查询账号
- /// (中文参数)
+ /// (路由参数)
///
///
[HttpGet]
- public IActionResult GetAccountByName(string ChineseName, [FromQuery]string ChineseName2)
+ [Route("{name}")]
+ public IActionResult GetAccount([FromRoute] string name)
{
- var accounts = _accountService
- .GetAllAccounts()
- .Where(a => a.Name == ChineseName || a.Name == ChineseName2)
- .ToList();
-
- var result = BaseResultUtil.Success(accounts);
+ var accounts = _accountService.GetAllAccounts();
+ var account = accounts.FirstOrDefault(a => a.Name == name);
+ var result = BaseResultUtil.Success(account);
return Ok(result);
}
///
/// 查询账号
- /// (路由参数)
+ /// (中文参数)
///
///
[HttpGet]
- [Route("{name}")]
- public IActionResult GetAccount([FromRoute] string name)
+ public IActionResult GetAccountByName(string ChineseName, [FromQuery]string ChineseName2)
{
- var accounts = _accountService.GetAllAccounts();
- var account = accounts.FirstOrDefault(a => a.Name == name);
+ var accounts = _accountService
+ .GetAllAccounts()
+ .Where(a => a.Name == ChineseName || a.Name == ChineseName2)
+ .ToList();
+
var result = BaseResultUtil.Success(accounts);
return Ok(result);
}
@@ -104,12 +106,15 @@ namespace HttpClientStudy.WebApp.Controllers
///
/// 查询账号
- /// (请求头参数)
+ /// (请求头参数:中文,客户端Url编码后请求,此处Url解码后使用)
///
///
[HttpGet]
- public IActionResult GetAccountFromHeader([FromHeader] Account account)
+ public IActionResult GetAccountFromHeader([FromHeader] string name)
{
+ //先Url解码
+ var decodeName = WebUtility.UrlDecode(name);
+ var account = _accountService.GetAllAccounts().Single(i => i.Name == decodeName);
var result = BaseResultUtil.Success(account);
return Ok(result);
}