2010-08-10 4 views
0

사용자가 검색 결과를 탐색 할 수있는 탐색 모음을 제공하는 사이트가 있습니다.Java에서 세션이없는 세션과 세션이없는 세션을 확인하는 방법

사용자가 점심 식사 시간을 가지거나 세션 시간이 초과되면 탐색중인 화면에서 다음을 클릭하면 다음 페이지가 표시되지만 지금은 저장 되었기 때문에 탐색이 손실됩니다 부실 세션. 이것은 사람들이 끝내 혼란 스럽습니다.

우리가 생각해 낸 해결책은 새로운 세션을 만들고 사용자를 결과의 시작으로 되돌려 보내고 세션없이 우리를 방문했다는 메시지를 보여주고 우리가 다시 시작으로 보냈다는 것입니다 .

이제 우리는 페이지에 직접 외부 링크에서 오는 사람들로부터 불만을 받고 있습니다. 현재는 부실 세션과 존재하지 않는 세션의 차이점을 볼 수 없으므로 (유효한) 세션없이 모든 사람에게 메시지를 보여줍니다.

세션 쿠키를 삭제 한 방문자와 세션 쿠키를 삭제 한 방문자가 세션 시간 초과 후 다시 방문한 방문자를 신뢰할 수있게 검색하려면 어떻게해야합니까? 당신이 당신의 코드 페이지에 대한 링크를 통해 직접오고 다음 사람에 세션 유효성 검사를 수행하는 경우

감사

답변

0

는 요청 헤더 어디든지 세션 매개 변수를 저장하는에 세션 속성이 없습니다. 이 작업이 완료되지 않은 경우 서버와 세션을 만드는 모든 클라이언트에 대해 매개 변수를 보냅니다. 모든 요청을 통해이 매개 변수를 전달하십시오. 이러한 매개 변수의 존재는 누군가가 부실 세션 또는 전혀 세션없이 오는지 여부를 확인합니다.

HttpServletRequest 클래스의 getHeader 메서드를 확인하십시오. 이렇게하면 주어진 헤더가 있는지 여부를 확인할 수 있습니다.

+0

Google에서이 문제를 조사하고 있습니다. 다시 너에게 갈거야. 감사합니다 – mplungjan

+0

헤더에 세션 ID가 있는지 살펴 봅니다. 세션 ID가 유효하지 않은 경우 메시지를 표시합니다. – mplungjan

관련 문제