>

응용 프로그램에 대한 로그인 페이지를 생성하고 3 분 동안 세션을 설정했는데 정상적으로 작동하지만 문제는 세션이 종료 될 때 사용자가 현재 페이지에서 여전히 많은 활동을 수행 할 수 있다는 것입니다. 사용자가 페이지를 새로 고치거나 다른 페이지로 리디렉션하지 않으면 페이지가 표시되지 않습니다. 세션이 종료되고 사용자가 현재 페이지에서 어떤 활동을 수행하면 어떻게 로그 아웃 할 수 있습니까?


  • 답변 # 1

    자바 스크립트 setTimeout 를 실행할 수 있습니다  백그라운드에서 사용자가 로그인했는지 확인하고 3 분 후에 브라우저 창이 새로 고쳐집니다.

    또는 (더 나은)

    이 타이머를 서버 측에서 실행할 수 있으며 클라이언트가 무언가를 변경하려고 할 때 먼저 타이머 또는 클라이언트가 로그인 할 때까지의 시간 값을 확인한 다음 시간을 기준으로 조치를 수행하거나 아니. 따라서 3 분 간격으로 사용자는 컨텐츠를 볼 수 있지만 무언가를 변경하려고하면 백엔드가 요청을 거부하고 다시 로그인해야합니다.

    인증 및 이와 유사한 것들에 관해서는 클라이언트 브라우저가 아닌 서버 측에서 악용 될 수 없도록 서버 측에서 수행하는 것이 더 낫기 때문에 훨씬 더 나은 솔루션입니다.

    하지만

    두 솔루션을 동시에 적용 할 수 있습니다 (클라이언트 브라우저가 창을 다시로드하고 클라이언트를 로그인 페이지로 리디렉션하고 서버가 요청을 거부하여 데이터가 어떤 식 으로든 수정되지 않도록 함).

관련 자료

  • 이전 javascript - 여러 단어를 검증하는 단수 정규식
  • 다음 curl - 클라이언트 ID에 오류가 발생하는 Uber Api 인증 파일을 열 수 없습니다 ??? /