2011-08-30 2 views
1

asp.net에서 하나의 웹 응용 프로그램을 개발 중입니다. 팝업 창에서 내 모든 페이지를 여는 중입니다. 누군가가 URL을 복사하여 다른 탭에 붙여 넣을 때 세션을 만료 시키거나 세션 값을 변경하고 싶습니다. 어떻게 구현할 수 있습니까? 도와주세요.asp.net의 다른 탭에서 URL을 열 때 세션을 변경하는 방법

답변

0

나는이

string referer = Request.ServerVariables["HTTP_REFERER"]; 
     if (string.IsNullOrEmpty(referer)) 
     { 
      Response.Redirect("../Index.htm"); 
     } 
를 사용하여이 문제를 해결했다
1

간단한 방법은 Request.UrlReferrer을 확인하는 것입니다. 사용자 복사가 URL을 붙여 넣는 경우 Referrer는 비어 있습니다.

이를 사용하기 전에 고려해야 할 점 몇 :

  1. 직접 사용자가 입력 할 수있는 페이지에 대한 예외를 제공합니다. 예 : 로그인 페이지 또는 북마크 할 수있는 페이지
  2. 나는 팝이 리퍼러없이 Javascript에서 열릴 수 있다고 믿습니다. 기존 코드가이 방법을 사용하여 팝업을 열지 않았는지 확인하십시오. 사용자가 새 탭을 열었습니다 여부를 결정하는 일반적인 방법을

, 볼은 here

관련 문제