aboutsummaryrefslogtreecommitdiff
path: root/Timeline/Controllers/UserController.cs
diff options
context:
space:
mode:
author杨宇千 <crupest@outlook.com>2019-04-11 21:13:15 +0800
committerGitHub <noreply@github.com>2019-04-11 21:13:15 +0800
commit8c5e7069d2651fb6fae641dfe482d7a0910b3fd1 (patch)
tree49dc35791778a4ed1403319708046ac8823210b6 /Timeline/Controllers/UserController.cs
parent1eb6d9abfc24eec380b7b5d7423102a53041239e (diff)
parentf562660f52ce055e243b937a988f04c90ad3ae55 (diff)
downloadtimeline-8c5e7069d2651fb6fae641dfe482d7a0910b3fd1.tar.gz
timeline-8c5e7069d2651fb6fae641dfe482d7a0910b3fd1.tar.bz2
timeline-8c5e7069d2651fb6fae641dfe482d7a0910b3fd1.zip
Merge pull request #19 from crupest/18-createtoken
Change create token api.
Diffstat (limited to 'Timeline/Controllers/UserController.cs')
-rw-r--r--Timeline/Controllers/UserController.cs49
1 files changed, 12 insertions, 37 deletions
diff --git a/Timeline/Controllers/UserController.cs b/Timeline/Controllers/UserController.cs
index 45242ce3..eb1b8513 100644
--- a/Timeline/Controllers/UserController.cs
+++ b/Timeline/Controllers/UserController.cs
@@ -15,23 +15,6 @@ namespace Timeline.Controllers
public const int LogInFailed = 4001;
}
- public class UserCredentials
- {
- public string Username { get; set; }
- public string Password { get; set; }
- }
-
- public class CreateTokenResult
- {
- public string Token { get; set; }
- public UserInfo UserInfo { get; set; }
- }
-
- public class TokenValidationRequest
- {
- public string Token { get; set; }
- }
-
private readonly IUserService _userService;
private readonly IJwtService _jwtService;
private readonly ILogger<UserController> _logger;
@@ -45,39 +28,31 @@ namespace Timeline.Controllers
[HttpPost("[action]")]
[AllowAnonymous]
- public ActionResult<CreateTokenResult> CreateToken([FromBody] UserCredentials credentials)
+ public ActionResult<CreateTokenResponse> CreateToken([FromBody] CreateTokenRequest request)
{
- var user = _userService.Authenticate(credentials.Username, credentials.Password);
+ var user = _userService.Authenticate(request.Username, request.Password);
if (user == null) {
- _logger.LogInformation(LoggingEventIds.LogInFailed, "Attemp to login with username: {} and password: {} failed.", credentials.Username, credentials.Password);
- return BadRequest();
+ _logger.LogInformation(LoggingEventIds.LogInFailed, "Attemp to login with username: {} and password: {} failed.", request.Username, request.Password);
+ return Ok(new CreateTokenResponse
+ {
+ Success = false
+ });
}
- _logger.LogInformation(LoggingEventIds.LogInSucceeded, "Login with username: {} succeeded.", credentials.Username);
+ _logger.LogInformation(LoggingEventIds.LogInSucceeded, "Login with username: {} succeeded.", request.Username);
- var result = new CreateTokenResult
+ return Ok(new CreateTokenResponse
{
+ Success = true,
Token = _jwtService.GenerateJwtToken(user),
UserInfo = user.GetUserInfo()
- };
-
- return Ok(result);
- }
-
- [HttpPost("[action]")]
- [Consumes("text/plain")]
- [AllowAnonymous]
- public ActionResult<TokenValidationResult> ValidateToken([FromBody] string token)
- {
- var result = _jwtService.ValidateJwtToken(token);
- return Ok(result);
+ });
}
[HttpPost("[action]")]
- [Consumes("application/json")]
[AllowAnonymous]
- public ActionResult<TokenValidationResult> ValidateToken([FromBody] TokenValidationRequest request)
+ public ActionResult<TokenValidationResponse> ValidateToken([FromBody] TokenValidationRequest request)
{
var result = _jwtService.ValidateJwtToken(request.Token);
return Ok(result);