diff options
Diffstat (limited to 'Backend')
-rw-r--r-- | Backend/Api/Api/Controllers/AuthController.cs | 11 | ||||
-rw-r--r-- | Backend/Api/Api/Interfaces/IUserService.cs | 2 | ||||
-rw-r--r-- | Backend/Api/Api/Services/UserService.cs | 4 |
3 files changed, 14 insertions, 3 deletions
diff --git a/Backend/Api/Api/Controllers/AuthController.cs b/Backend/Api/Api/Controllers/AuthController.cs index cbd5eb8..abb7adc 100644 --- a/Backend/Api/Api/Controllers/AuthController.cs +++ b/Backend/Api/Api/Controllers/AuthController.cs @@ -37,6 +37,17 @@ namespace Api.Controllers return Ok(); } + [HttpPost("refreshJwt")] + [Authorize(Roles ="User")] + public async Task<ActionResult<string>> refreshJwt() + { + var jwt = await _userService.RenewToken(); + if (jwt != null) + { + return Ok(jwt); + } + return BadRequest("Pogresno uneti podaci"); + } [HttpPost("login")] public async Task<ActionResult<string>> Login([FromBody] Login creds) { diff --git a/Backend/Api/Api/Interfaces/IUserService.cs b/Backend/Api/Api/Interfaces/IUserService.cs index 218c67a..db2eac1 100644 --- a/Backend/Api/Api/Interfaces/IUserService.cs +++ b/Backend/Api/Api/Interfaces/IUserService.cs @@ -12,7 +12,7 @@ namespace Api.Interfaces Task<User> deleteUser(String email); Task<User> getUserById(string id); - Task<string> RenewToken(string existingToken); + Task<string> RenewToken(); Task<string> Login(Login login); Task<string> Register(Register register); Task<Boolean> VerifyUser(VerifyUser login); diff --git a/Backend/Api/Api/Services/UserService.cs b/Backend/Api/Api/Services/UserService.cs index 034c494..5fd61f6 100644 --- a/Backend/Api/Api/Services/UserService.cs +++ b/Backend/Api/Api/Services/UserService.cs @@ -163,9 +163,9 @@ namespace Api.Services return false; } - public async Task<string> RenewToken(string existingToken) + public async Task<string> RenewToken() { - var id = _jwtService.TokenToId(existingToken); + var id = await UserIdFromJwt(); if (id == null) return null; var user = await getUserById(id); |