2017-04-19 1 views
0

Jhipster, Spring Boot, Spring Security, Rest API, Angular js, Spring boot의 사용이있다. yml 파일에 세션 시간 초과 값을 설정할 수 있다는 것을 알고 있습니다. 하지만 이해하고 싶었던 것은 그러한 어플리케이션에서 시간 간격이 어떻게 계산되는지입니다.Jhipster 세션 타임 아웃

예 : 세션이 timeout= 60 초라고 가정 해 보겠습니다.

사용자가 로그인하여 브라우저를 70 초 동안 유휴 상태로 유지합니다. 이제 사용자가 버튼을 눌렀을 때 70 초 후. 팝이 표시됩니다. 그래서 두 개의 나머지 엔드 포인트의 차이점에 대한 계산이 어디 있는지 알고 싶었습니다. 왜냐하면 세션 시간 초과 간격 이후에 어떤 api라도 세션 타임 아웃을 얻었 기 때문입니다.

답변

2

세션 시간 초과는 임베디드 서블릿 엔진 (Jetty, Tomcat 또는 Undertow)에 의해 계산되며 모든 활성 세션 및 마지막 액세스 시간을 유지합니다.

첫 번째 요청에서 세션 개체가 서버에 만들어지고 해당 ID를 포함하는 세션 쿠키가 다시 보내지며 서버는 마지막 액세스 시간도 세션 개체에 저장합니다.

두 번째 요청이 처리되면 서버는 세션 쿠키에서 세션 ID를 추출한 다음이 ID와 일치하는 세션 개체를 찾아 현재 시간과 마지막 액세스 시간을 비교합니다.

+0

이 솔루션을 사용하려고합니다. 보안되지 않은 엔드 포인트를 만들었으며이 끝점을 매 30 초마다 맞출 계획입니다. 매개 변수로 사용자 이름을 전달합니다. –