2012-11-14 2 views
1

MVC4 - 면도기 엔진을 사용하고 있습니다. 컨트롤러에서 모달 대화 상자를 사용하여 로그인보기를 표시하고 있습니다. 쿠키를 설정하기 위해 "FormsAuthentication.SetAuthCookie (model.UserName, model.RememberMe)"를 사용하고 있습니다. '/ Account/LogOn'페이지를 사용하여 직접 로그인 할 때 모든 것이 정상적으로 작동하고 사용자가 Remember Me 옵션을 선택하면 사용자 이름/암호 필드가 올바르게 채워집니다. 하지만 모달 대화 상자를 사용하여 로그인보기를 표시하면 작동하지 않으며 사용자 이름/암호가 쿠키에서 채워지지 않습니다.대화창의 로그인 팝업창에 기억이 안 나옵니다

해결 방법을 알려주세요.

감사합니다.

답변

1

"기억하기"확인란은 자동으로 채워지는 사용자 이름과 암호 필드를 나타내지 않지만 실제로 인증 쿠키의 수명을 나타냅니다. 기본적으로 쿠키는 사용자가 닫으면 만료됩니다. 브라우저 창 (세부 사항을 다시 입력하게 함) 이 옵션을 선택하면 인증 쿠키가 지속되고 사용자는 다른 브라우저 세션간에 로그인 상태를 유지합니다.

브라우저에서 지원할 때 사용자의 사용자 이름과 비밀번호가 자동으로 입력됩니다. 웹 응용 프로그램의 기능이 아닙니다 (응용 프로그램이 사용자의 일반 비밀번호에 액세스 할 수 없으므로 불가능합니다. 쿠키에 저장 됨). 이것은 "Firefox가이 사이트의 사용자 이름과 암호를 기억하길 원하십니까?"입니다. 프롬프트가 있습니다.

용어가 혼란 스럽다는 점에 동의 할 것입니다. "기억하십시오"는 브라우저가 기억하는 로그인 세부 정보 또는 클라이언트에 유지되는 인증 쿠키를 나타낼 수 있습니다. 올바른 해결책은 "내 계정을 기억하십시오"에서 "이 컴퓨터에 로그인 해두기"에서 언어를 변경하는 것입니다. 좀더 장황하지만 훨씬 정확합니다.

+0

응답 해 주셔서 감사합니다. 나는 '로그인 상태 유지'가 적절하다고 장담합니다. 현재 직면하고있는 문제는 FormsAuthentication.SetAuthCookie()가 로그인 팝업에서 '내 계정 정보 기억'을 선택했을 때 작동하지 않습니다. Jquery 대화 상자를 사용하여 팝업이 표시됩니다. 모든 브라우저는 일반 로그인 페이지의 사용자 이름과 비밀번호 자동 채우기를 지원합니다. 팝업으로 렌더링 된 경우에만 필드가 공백으로 나옵니다. – user1824771

+0

브라우저는 필드가있을 때 페이지로드시 필드를 자동으로 채 웁니다. 페이지가로드 된 후 (예 : jQuery 팝업에서) 추가되거나 표시된 필드는 채워지지 않습니다. 그러나 다시 ** ** SetAuthCookie **와는 아무런 관련이 없습니다. – Dai

+0

오크 .. 이제 이해가됩니다. 도움을 많이 줘서 고맙습니다. – user1824771

관련 문제