2017-03-11 1 views
0

페이지의 롤아웃 속도가 느립니다. 기본적으로 로그인 페이지는 ASP.NET에 있으며 이전 페이지는 메뉴 아래의 Iframe에 배치 된 ASP 클래식에 있습니다. 메뉴/페이지를 처리하는 두 개의 다른 서버가 있습니다. .NET에서 ASP 세션으로 사용자 세션을 전달하는 가장 좋은 방법은 무엇입니까?ASP에서 ASP.NET으로 세션 변수를 전달하려고 시도합니다.

로그인을 게시 할 때 동시에 ASP 페이지에 사용자 자격 증명을 보내도록 .NET 로그인을 수정할 수도 있습니다. 이 문제가 있습니까? 아니면이를 수행하는 더 깨끗한 방법이 있습니까?

답변

1

ASP.NET 코드는 기존 ASP 세션 쿠키를 포함하여 도메인의 모든 쿠키를 읽을 수 있지만 사용하지는 않습니다. 당신은 그것을 활용할 수 있습니다.

  1. ASP.NET 측에서 signon을 처리하십시오. 프레임 워크는 인증 과정에서 생성 된 다른 쿠키와 함께 ASP 및 ASP.NET 세션을 수동으로 생성해야합니다.

  2. 기존 ASP 세션 쿠키를 읽고 데이터베이스에 JointSession 레코드를 만들어 현재 어떤 사용자가 로그인했는지 나타냅니다. ASP 세션 쿠키 값과 현재 ASP.NET 세션 ID (각각 자신의 열에 있음)를 사용자 ID, 역할 및 두 사이트간에 공유해야하는 다른 항목과 함께 저장하십시오.

  3. 자체 세션 쿠키를 읽고 해당하는 JointSession 데이터베이스 레코드를 조회하는 ASP 코드를 작성하십시오. 하나가 발견되면 사이트의 ASP 측은 사용자가 ASP.NET에 로그온했음을 유추 할 수 있으며 자체 일치 세션을 생성하여 JointSession 레코드의 필드에서 초기화 할 수 있습니다.

  4. ASP와 ASP.NET간에 데이터를 전달해야하는 경우 JointSession에 열을 추가하거나 EAV 스키마를 사용하십시오. 그것이 나 였다면 VarChar 열을 추가하고 거기에 JSON을 던지겠습니다.

관련 문제