ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ASP.NET에서 COOKIE 사용
    IT/VB.NET 2024. 10. 5. 05:51
    728x90
    반응형
     cookie는 오늘날 많은 웹사이트에서 대단히 중요한 부분을 차지하고 있으며 대부분의 웹사이트에서 유용하게 사용되고 있다. 여기서는 asp.net에서 Cookie의 셋팅 방법과 셋팅된 값을 호출하는 방법에 대해서 알아보기로 한다.
     
    먼저 Cookie 저장하고 호출하기 위해서 HttpCookie type 변수를 선언한다.
     새로운 HttpCookie Class 생성하는 방법은  가지의 OverLoad형태로 지원이 된다. OverLoad 리스트는 다음과 같다.
    HttpCookie(string)
    HttpCookie(string, string)
    위의 OverLoad리스트를 이용해서 아래와 같이 새로운 Cookie Class Instance 생성한다.
    기존의 asp에서는 Cookie 기록하기 위해서 NameValueCollection HasKeys 사용하지 않는 경우는 response.Cookies(“MyName”) = “신동열 형태로 사용을 했고,  HasKeys 사용하는 경우는 response.Cookies(“MyInfo”)(“name”) = “신동열 형태로 사용했다.  ASP.Net에서도 asp 동일하게 사용이 가능하다. HttpCookie(string) HasKeys 사용하는 경우이고, HttpCookie(string, string) HasKeys 사용하지 않는 경우이다.
    1.       HttpCookie(string, string) class 이용한 Cookie사용 (HasKeys 사용하지 않는 경우)
    ~ HasKeys 사용하지 않고 Cookie 기록하는 방법은 아주 간단하다.
     tCookie = new HttpCookie(MyName, 신동열)
     response.AppendCookie(tCookie)
      Cookie 새로 생성하고 response AppendCookie Method 이용해서 Client PC Cookie 보내게 된다. 이렇게 기록된 cookie 값을 호출하기 위해서  request.cookies 메소드를 이용해서  값을 불러온다. 아래의 코드를 보면 이렇게 호출된 Cookie 사용하는 방법을   있다.
     코드에서 tCookie.Name MyName이라는 값을 가지고 있고, tCookie.HasKeys 쿠기가 HasKeys인지 아닌지에 대한 boolean값을 가지고 있다. 현재 tCookie HasKeys 아니므로 false 반환할 것이다. tCookie.Expires 파기시점을 반환하는데 Cookie 발생할  파기시점을 지정하지 않았으므로 파기시점이 없다(브라우저 종료시 자동 파기). 그리고 마지막 라인의 tCookie2.Value 신동열이라는 문자열을 반환할 것이다.
    2.       HttpCookie(string) class 이용한 Cookie사용 (HasKeys 사용하는 경우)
    ~ 이것은 NameVlaueCollection 사용하는 방법으로 하나의 Cookie 좀더 다양한 정보를 저장하는 것이 가능하다. 쿠키를 기록하는 방법은 아래의 코드와 같다.
                      oCookie = new HttpCookie("MyInfo")
                      oCookie.Values.Add("이름", "동열")
                      oCookie.Values.Add("주소", "서울에서 살고 있음.")
                      oCookie.Values.Add("전자우편", "stonwin@chollian.net")
                 Response.AppendCookie(oCookie)
    ~ 아래 코드는 HasKeys형태로 저장된 쿠키를 호출해서 화면에 Display하는 방법이다.
                      oCookie = request.Cookies(“MyInfo”)  à cookie 호출
                      
    호출된 쿠키는 다음과 같은 속성을 가지고 있다.

                   oCookie.Name : Cookie 이름을 반환한다. “MyInfo” 문자열 반환
                      oCookie.Path : Cookie 사용될 Path 반환한다. 현재 지정된 패스 없음.(Default 사용)
                      oCookie.Domain : Cookie 사용될 Domain 반환한다. 현재 지정된  없음.(Default 사용)
                      oCookie.HasKeys : HasKeys 대한 Boolean 반환 현재 쿠키에서는 True 반환
                      oCookie.Expires : 파기시점 반환, 지정않은 경우 브라우저 종료시 파기
                      oCookie.Secure : HTTPS상에서만 전달될 것인지에 대한 Boolean값 반환
                      oCookie.Value : 쿠키가 가지고 있는  반환
    반환  à 이름=동열&주소=서울에서 살고 있음.&전자우편=stonwin@chollian.net

                      oCookie.Values("이름")  à  동열이라는 문자열 반환
                      oCookie("주소"))  à  서울에서 살고 있음.” 문자열 반환
                 Request.Cookies("MyInfo")("전자우편") à stonwin@chollian.net 문자열 반환
    ~ HasKeys 형태로 저장된 Cookie Loop 사용해서 루틴을 돌면서 호출이 가능하다.
     
    3.       Cookie 파기
    ~ Cookie 파기하기 위해서는 Expires Property 이용한다.
     
     
    4.       현재 Client 저장된 모든 쿠키 Collection 가져오기
    Sub CookieCollectionView()
            '현재 쿠키 컬렉션 가져오기
            Dim oReqCookies As HttpCookieCollection  = Request.Cookies
            Dim sReqCookies() As String = oReqCookies.AllKeys
            For  i=0 to Ubound(sReqCookies)
                    response.write("cookie "& i &":"& sReqCookies(i) & "<br>")
            Next i
    End Sub
     
    위의 Sub 프로시저를 실행하면 아래와 같이 Client 저장된 모든 쿠키를 가져와서 화면에 출력해 준다.
     
    cookie 0:MyInfo
    cookie 1:ScriptLanguagePreference
    cookie 2:ASPSESSIONIDGGQGGMMG
    cookie 3:AspSessionId

    cookie 사용 
     
     

    출처: www.erpplus.co.kr

     

    Goover가 알려주는 쿠키

    쿠키(Cookie)에 대한 이해

    쿠키는 우리가 웹사이트를 방문할 때 발생하는 중요한 기술 중 하나로, 사용자 컴퓨터에 저장되는 작은 텍스트 파일입니다. 이 파일은 웹사이트가 사용자를 더 잘 이해하고, 개인화된 경험을 제공할 수 있도록 해주는 역할을 합니다. 아래에서 쿠키의 정의, 역사, 종류, 사용 목적, 그리고 개인 정보 보호와 관련된 요소를 자세히 살펴보겠습니다.

    쿠키의 정의

    쿠키(HTTP 쿠키)는 하이퍼텍스트 전송 프로토콜(HTTP)에 기반하여 웹 브라우저가 저장하는 정보 파일로, 웹사이트는 사용자가 방문할 때 이 파일을 사용하여 해당 사용자의 브라우징 행동을 추적하고 기억하는 데 사용됩니다. 일반적으로 쿠키는 사용자 ID, 방문한 페이지, 사용자 설정 등과 같은 정보를 저장합니다. 쿠키는 보통 "세션 쿠키"와 "영구 쿠키"로 분류됩니다.

    세션 쿠키: 웹사이트를 방문하는 동안만 유지되며, 브라우저를 종료하면 삭제됩니다. 사용자의 검색 상태를 기억하는 데 도움이 됩니다.


    영구 쿠키: 사용자 기기에 일정 기간 저장되며 사용자가 다시 웹사이트를 방문할 때 정보가 복구될 수 있습니다. 예를 들어, 로그인 정보를 기억하거나 방문한 웹사이트의 언어 설정을 유지하는 데 사용됩니다.

    쿠키의 역사

    쿠키의 개념은 1994년, 넷스케이프 커뮤니케이션스의 개발자 루 몬툴리에 의해 도입되었습니다. 그는 당시 MCI를 위한 전자 상거래 애플리케이션을 개발하면서 사용자 상태를 기억할 수 있는 방법이 필요하다고 느꼈고, 이로 인해 쿠키라는 기술이 발전하게 되었습니다. 이는 가상 쇼핑 카트를 신뢰성 있게 구현하기 위한 해결책으로 주목받게 되었습니다.

    쿠키의 사용 목적

    쿠키는 여러 가지 목적으로 사용되며, 주로 다음과 같은 기능을 수행합니다:

    개인화된 경험 제공: 사용자가 이전에 설정한 정보나 선호도를 기억하여 맞춤형 콘텐츠를 제공함으로써 웹사이트의 탐색 경험을 개선합니다.


    상태 유지: 세션 쿠키를 통해 사용자의 로그인 상태를 유지함으로써, 사용자가 별도로 로그인하지 않아도 됩니다. 이는 특히 전자상거래 웹사이트에서 장바구니에 담긴 상품을 기억하는 데 유용합니다.


    웹 분석: 쿠키를 통해 사용자의 행동 패턴을 분석하고, 웹사이트의 구조나 콘텐츠를 개선하기 위한 통계 정보를 수집합니다. 이는 웹 개발자가 사이트를 효과적으로 관리하고 최적화하는 데 큰 도움을 줍니다.

    개인 정보 보호와 쿠키

    쿠키는 유용한 기술이지만, 개인 정보 보호와 관련된 논란도 존재합니다. 사용자의 브라우징 데이터를 수집할 수 있기 때문에, 관리나 해제에 대한 선택권이 필요합니다. 많은 웹 브라우저에서 사용자는 쿠키 수집을 제어할 수 있는 옵션을 제공하며, 모든 쿠키를 허용하거나 특정 쿠키에 대해 알림을 받고 삭제할 수 있습니다.

    예를 들어, 사용자는 웹 브라우저의 설정을 통해 쿠키를 차단하거나 삭제할 수 있으며, 이는 개인의 데이터 보호에 기여합니다. 또한, 쿠키를 통해 수집된 정보가 개인을 식별할 수 없도록 설계된 사이트도 많습니다.

    결론

    쿠키는 웹 사용의 편리함을 제공하는 중요한 기술로, 사용자 경험을 향상시키고 웹사이트의 기능을 최적화하는 데 기여합니다. 그러나 사용자의 개인 정보를 보호하는 것 역시 중요한 사안이므로, 쿠키의 사용에 대한 이해와 관리가 필요합니다. 사용자는 쿠키에 대한 충분한 정보를 가지고 이를 관리함으로써 보다 안전하고 편리한 웹 경험을 누릴 수 있습니다.

    728x90

    'IT > VB.NET' 카테고리의 다른 글

    VB6.0과 VB.NET의 Object, Function 매핑 테이블  (2) 2024.10.15
    코드 변환 SITE (VB.NET <-> C#)  (5) 2024.10.09
    VB.NET 교육자료  (2) 2024.10.08
    SMARTCLIENT  (0) 2024.10.07
    VB.NET 소개  (1) 2024.10.05
Designed by Tistory.