Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

다음은 제가 "microsoft.public.kr.dotnet.asp"에 올렸던 답변 내용입니다.

-----------------------------------------------------------------------
> Response.Cookies["xromeo"]["userID"] = null;
> Response.Cookies["xromeo"]["userPass"] = null;
> Response.Cookies.Clear();

음... 유감이군요. ^^
다 좋은데... 마지막 Response.Cookies.Clear() 때문에 동작을 안 하는군요.

직관적으로는 그것이 맞을 것 같기는 한데... 프로그램상으로는 아마도 Cookies
컬렉션의 모든 항목을 지우고는 Set-Cookie 헤더에는 결과가 반영이 안되는 것
같습니다. 따라서 기존 쿠키는 계속 살아있겠지요.
애써 명시적으로 지우려고 했던 "xromeo/userID = null"에 대한 사항이
Set-Cookie로 반영되기도 전에 사라져 버리니... ^^

--
======= .NETXpert ==========
url : http://www.dotnetxpert.com
eml : kevin@dotnetxpert.com
msn: kevin025@magicn.com

MCSD.NET
==========================

"Karl" <masterromeo131@hotmail.com.korea> wrote in message
news:eq95A61eEHA.2352@TK2MSFTNGP09.phx.gbl...
> 안녕하세요 정성태님
>
> 아...머리 아프내요....잘못된 부분좀 지적해 주세요...^^:
>
>
> 상태는 쿠키로 했구요...로그아웃부분은
>
> Response.Cookies["xromeo"]["userID"] = null;
> Response.Cookies["xromeo"]["userPass"] = null;
> Response.Cookies.Clear();
>
> logInPanel.Visible = true;
> logOutPanel.Visible = false;
>
> Response.Write(_common.alert("Logout되었습니다.",""));
>
> 이렇게 처리를 했습니다.
>
>
> 로그인은 이렇게 했구요...
>
> string strCon = ConfigurationSettings.AppSettings["connectionString"];
>
> SqlConnection con = new SqlConnection(strCon);
> SqlCommand cmd = new SqlCommand();
> cmd.Connection = con;
> cmd.CommandText = " SELECT num FROM member WHERE id=@userID AND
> pass=@userPass ";
>
> cmd.Parameters.Add("@userID", SqlDbType.VarChar, 20);
> cmd.Parameters.Add("@userPass", SqlDbType.VarChar, 20);
> cmd.Parameters["@userID"].Value = txtUserID.Text;
> cmd.Parameters["@userPass"].Value = txtUserPass.Text;
>
> try
> {
> con.Open();
> if(cmd.ExecuteScalar() != null)
> {
> Response.Cookies["xromeo"]["userID"] = txtUserID.Text;
> Response.Cookies["xromeo"]["userPass"] = txtUserPass.Text;
>
> lblLoginStat.Text = txtUserID.Text;
>
> txtUserID.Text = "";
> txtUserPass.Text = "";
>
> logInPanel.Visible = false;
> logOutPanel.Visible = true;
>
> Response.Write(_common.alert("Login되었습니다.",""));
> }
> else
> {
> Response.Write(_common.alert("Login정보가 정확하지
> 않습니다.","history.go(-1);"));
>
> Response.End();
> }
> }
> finally
> {
> con.Close();
>
> txtUserID.Text = "";
> txtUserPass.Text = "";
> }
>
>
> --
> 그럼 오늘도 고맙습니다.
>
> ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
> Karl, Lee
> Microsoft 2003, 2004 MVP , MCSD
> email & msn : masterromeo131 AT hotmail DOT com
> ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
> "정성태" <kevin25@hanmail.net.korea> wrote in message
> news:uX3kBx1eEHA.3928@TK2MSFTNGP11.phx.gbl...
> > 로그인/로그아웃을 어떻게 처리하시나요?
> >
> > 예를 들어,,, 로그인후, 그에 대한 정보를 Cookie 로 처리하는 경우,
로그아웃
> > 시에 쿠키를 지우지 않으면 해당 IE 가 종료되지 않는 이상 계속 로그인
상태가
> > 된 거나 마찬가지로 동작하게 되지요.
> >
> > ... 로그인시에 해주었던 처리를 로그아웃시에 깨끗하게 제거해야 겠지요. ^^
> >
> > --
> > ======= .NETXpert ==========
> > url : http://www.dotnetxpert.com
> > eml : kevin@dotnetxpert.com
> > msn: kevin025@magicn.com
> >
> > MCSD.NET
> > ==========================
> >
> > "Karl" <masterromeo131@hotmail.com.korea> wrote in message
> > news:##vv5X1eEHA.3412@TK2MSFTNGP11.phx.gbl...
> > > 안녕하세요 Karl입니다.
> > >
> > > 로그아웃 후에 캐쉬가 남아있어서 뒤로가기를 하면 다시 로긴이
> > > 되고있습니다. -_-;
> > >
> > > html에 meta태그로 막는건 소용이 없는것 같고....
> > >
> > > 어떤 방법으로 막나요?
> > >
> > >
> > >
> > > 그럼 오늘도 고맙습니다.
> > >
> > > ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
> > > Karl, Lee
> > > Microsoft 2003, 2004 MVP , MCSD
> > > email & msn : masterromeo131 AT hotmail DOT com
> > > ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
> > >
> > >
> >
> >
>
>









[최초 등록일: ]
[최종 수정일: 9/28/2024]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 106  107  108  109  [110]  111  112  113  114  115  116  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11174정성태4/3/201719443VC++: 116. Visual Studio 단위 테스트 - Failed to set up the execution context to run the test
11173정성태4/3/201722986VC++: 115. Visual Studio에서 C++ DLL을 대상으로 단위 테스트할 때 비정상 종료한다면?파일 다운로드1
11172정성태4/3/201722151.NET Framework: 651. C# - 특정 EXE 프로세스를 종료시킨 EXE를 찾아내는 방법파일 다운로드1
11171정성태3/31/201718852VS.NET IDE: 114. Visual Studio 디버깅 경고 창 - You are debugging a Release build of ...
11170정성태3/31/201720736.NET Framework: 650. C# - CachedAnonymousMethodDelegate 유형의 코드 생성
11169정성태3/30/201720589VC++: 114. C++ vtable의 가상 함수 호출 가로채기파일 다운로드1
11168정성태3/29/201723913VC++: 113. C++ 클래스 상속 관계의 vtable 생성 과정
11167정성태3/28/201724244VC++: 112. C++의 가상 함수 테이블 (vtable)은 언제 생성될까요? [2]
11166정성태3/28/201718470오류 유형: 382. System.Data.SqlClient.SqlException - Arithmetic overflow error converting IDENTITY to data type int.
11165정성태3/27/201721750오류 유형: 381. Visual C++에서 min, max 함수를 사용한 경우 C2589, C2059 컴파일 오류 발생
11164정성태3/27/201730086VC++: 111. C++ 클래스의 상속에 따른 메모리 구조 [2]파일 다운로드1
11163정성태3/25/201719864VC++: 110. CreateThread Win32 API에 C++ 클래스의 멤버 함수를 전달하는 방법파일 다운로드1
11162정성태3/24/201724097오류 유형: 380. Visual Studio 빌드 실패 - The OutputPath property is not set for project
11161정성태3/24/201716801오류 유형: 379. ICOMAdminCatalog.GetCollection 호출 시 0x80070422 예외 발생
11160정성태3/23/201721715.NET Framework: 649. ASP.NET - Server cannot append header after HTTP headers have been sent. (HTTP 헤더를 보낸 후에는 서버에서 헤더를 추가할 수 없습니다.)파일 다운로드1
11159정성태3/23/201719027Windows: 136. Memory-mapped File은 Private Bytes 크기에 포함될까요?파일 다운로드1
11158정성태3/22/201718637디버깅 기술: 85. Windbg - SOS 디버깅 사례 System.NullReferenceException 예외 추적
11157정성태3/22/201721900.NET Framework: 648. Dictionary<TKey, TValue>를 deep copy하는 방법파일 다운로드1
11156정성태3/21/201722523.NET Framework: 647. 닷넷(C#) 코드로 인증서 요청 코드 만드는 방법파일 다운로드1
11155정성태3/21/201722761.NET Framework: 646. SslStream의 CipherAlgorithm 선택이 가능할까요?파일 다운로드1
11154정성태3/5/201729759VC++: 109. DLL에서 STL 객체를 인자/반환값으로 갖는 함수를 제공할 때, 그 함수를 외부에서 사용하는 경우 비정상 종료한다면? [2]파일 다운로드1
11153정성태3/5/201729135VC++: 108. DLL에 정의된 C++ template 클래스의 복사 생성자 문제파일 다운로드1
11152정성태3/4/201722817VC++: 107. VirtualAlloc, HeapAlloc, GlobalAlloc, LocalAlloc, malloc, new의 차이점파일 다운로드1
11151정성태3/3/201723397VC++: 106. DLL 개발자가 주의해야 할 Secure CRT 함수 사용 [1]파일 다운로드1
11150정성태2/21/201719333.NET Framework: 645. Visual Studio Fakes 기능에서 Shim... 클래스가 생성되지 않는 경우 [5]
11149정성태2/21/201723017오류 유형: 378. A 64-bit test cannot run in a 32-bit process. Specify platform as X64 to force test run in X64 mode on X64 machine.
... 106  107  108  109  [110]  111  112  113  114  115  116  117  118  119  120  ...