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

비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  22  23  24  25  26  27  28  29  [30]  ...
NoWriterDateCnt.TitleFile(s)
13193정성태12/14/202213703오류 유형: 832. error C7681: two-phase name lookup is not supported for C++/CLI or C++/CX; use /Zc:twoPhase-
13192정성태12/13/202213711Linux: 55. 리눅스 - bash shell에서 실수 연산
13191정성태12/11/202215487.NET Framework: 2077. C# - 직접 만들어 보는 SynchronizationContext파일 다운로드1
13190정성태12/9/202217130.NET Framework: 2076. C# - SynchronizationContext 기본 사용법파일 다운로드1
13189정성태12/9/202217122오류 유형: 831. Visual Studio - Windows Forms 디자이너의 도구 상자에 컨트롤이 보이지 않는 문제
13188정성태12/9/202215646.NET Framework: 2075. C# - 직접 만들어 보는 TaskScheduler 실습 (SingleThreadTaskScheduler)파일 다운로드1
13187정성태12/8/202215502개발 환경 구성: 654. openssl - CA로부터 인증받은 새로운 인증서를 생성하는 방법 (2)
13186정성태12/6/202213401오류 유형: 831. The framework 'Microsoft.AspNetCore.App', version '...' was not found.
13185정성태12/6/202214296개발 환경 구성: 653. Windows 환경에서의 Hello World x64 어셈블리 예제 (NASM 버전)
13184정성태12/5/202212860개발 환경 구성: 652. ml64.exe와 link.exe x64 실행 환경 구성 [1]
13183정성태12/4/202212700오류 유형: 830. MASM + CRT 함수를 사용하는 경우 발생하는 컴파일 오류 정리 [1]
13182정성태12/4/202214450Windows: 217. Windows 환경에서의 Hello World x64 어셈블리 예제 (MASM 버전)
13181정성태12/3/202213018Linux: 54. 리눅스/WSL - hello world 어셈블리 코드 x86/x64 (nasm)
13180정성태12/2/202213857.NET Framework: 2074. C# - 스택 메모리에 대한 여유 공간 확인하는 방법파일 다운로드1
13179정성태12/2/202212483Windows: 216. Windows 11 - 22H2 업데이트 이후 Terminal 대신 cmd 창이 뜨는 경우
13178정성태12/1/202213647Windows: 215. Win32 API 금지된 함수 - IsBadXxxPtr 유의 함수들이 안전하지 않은 이유파일 다운로드1
13177정성태11/30/202214166오류 유형: 829. uwsgi 설치 시 fatal error: Python.h: No such file or directory
13176정성태11/29/202211725오류 유형: 828. gunicorn - ModuleNotFoundError: No module named 'flask'
13175정성태11/29/202216071오류 유형: 827. Python - ImportError: cannot import name 'html5lib' from 'pip._vendor'
13174정성태11/28/202212783.NET Framework: 2073. C# - VMMap처럼 스택 메모리의 reserve/guard/commit 상태 출력파일 다운로드1
13173정성태11/27/202213601.NET Framework: 2072. 닷넷 응용 프로그램의 스레드 스택 크기 변경
13172정성태11/25/202213174.NET Framework: 2071. 닷넷에서 ESP/RSP 레지스터 값을 구하는 방법파일 다운로드1
13171정성태11/25/202212632Windows: 214. 윈도우 - 스레드 스택의 "red zone"
13170정성태11/24/202213693Windows: 213. 윈도우 - 싱글 스레드는 컨텍스트 스위칭이 없을까요?
13169정성태11/23/202214932Windows: 212. 윈도우의 Protected Process (Light) 보안 [1]파일 다운로드2
13168정성태11/22/202212757제니퍼 .NET: 31. 제니퍼 닷넷 적용 사례 (9) - DB 서비스에 부하가 걸렸다?!
... 16  17  18  19  20  21  22  23  24  25  26  27  28  29  [30]  ...