2013-01-17 2 views
2

브라우저의 여러 탭간에 세션을 구별 할 수있는 방법이 있습니다. 첫 번째는 쿠키리스에 관한 것입니다. 두 번째는 새 탭을 열 때 window.name을 처리하기 위해 Javascript를 사용하는 것입니다. 세 번째는 숨겨진 필드를 사용하여 세션 값을 유지하는 것입니다. 세션을 구별하는 다른 방법이 있습니까?브라우저의 여러 탭 간 세션을 구분하는 방법

+1

쿠키를 사용하고 좋은 것을 말하지만 그것은 저입니다. – dana

+2

[이것이 당신이 원하는 것일 수도 있습니다. 링크는 몇 가지 코드를 제공합니다. 그것은 HiddenField를 사용합니다] [1] [1] : http://stackoverflow.com/questions/2840615/asp-net-session-multiple-browser-tabs-different-sessions – DevProve

+1

이 질문에 대한 내 대답보기 : http : //stackoverflow.com/a/14285965/453277. 간단히 말해 세션 값에 대해 * 숨겨진 필드에 실제 값을 저장하지 않는 고유 한 숨겨진 필드를 사용하십시오. –

답변

2

내 DNS 공급자 및 여러 은행을 포함하여 많은 사이트에서 쿠키 식별자 대신 세션 식별자를 유지하고 페이지간에 도달하는 모든 방식으로 ID를 다음 전달합니다 페이지.

이렇게하면 개별 탭이 열려있는 한 세션 만 남아있게되고 각 탭마다 쿠키를 사용하지 않는 고유 한 세션이 있음을 의미합니다.

ASP.NET에서는 상수 세션 식별자를 계속 전달하기 위해 모든 페이지에있는 숨겨진 필드를 사용하는 것이 좋습니다.

보안상의 이유로 브라우저 뒤로 버튼이나 브라우저 기록을 사용하여 사람들을 막으려는 경우 네비게이션이 발생할 때마다 식별자를 해싱 할 수 있습니다. 이것은 많은 넷 뱅킹 서비스가 사용하는 방법입니다. 매우 안전하지만이 방법은 사용자에게 불편할 수 있습니다.

-2

답변으로 게시해야합니다. 하지만 쿠키 사용을 권장하지 않습니다. 이것은 당신이 원하는 것일 수 있습니다. 링크가 약간의 코드를 제공했다. 그것은 HiddenField를 사용합니다 asp.net - session - multiple browser tabs - different sessions?

+1

-1 : 무슨 뜻인지 이해가 안됩니다. 다른 사람도 할 수 있니? –

관련 문제