示例#1
0
        public async Task <IActionResult> RefreshToken([FromBody] RefreshConnectionRequest request)
        {
            try
            {
                var authResult = await userService.RefreshConnection(request.JwtToken, request.RefreshToken);

                var authResponse = new AuthenticationResponse
                {
                    JwtToken     = authResult.JwtToken,
                    RefreshToken = authResult.RefreshToken.ToString()
                };
                return(new JsonResult(authResponse));
            }
            catch (UnauthorizedAccessException)
            {
                return(Unauthorized());
            }
        }
示例#2
0
        public async Task Refresh_LoginAndImmediatleyTryingRefreshToken_ShouldReturnInternalServerError()
        {
            var authResponse = await AuthHelper.Authenticate();

            var refreshRequest = new RefreshConnectionRequest
            {
                JwtToken     = authResponse.JwtToken,
                RefreshToken = authResponse.RefreshToken
            };

            HttpContent httpContent = new StringContent(
                JsonConvert.SerializeObject(refreshRequest),
                Encoding.UTF8,
                "application/json");

            var response = await httpClient.PostAsync($"/api/refresh", httpContent);

            Assert.Equal(HttpStatusCode.InternalServerError, response.StatusCode);
        }