상세 컨텐츠

본문 제목

[MOSS] 쿠키 사용하기

MOSS

by happynuri 2008. 7. 1. 12:17

본문

        private void SetCookies()
        {
            SPUser currentU = SPContext.Current.Web.CurrentUser; //쿠키에 사용할 현재 유저값
           
            HttpCookie cookie = new HttpCookie("UCookie"); //쿠키의 이름을 준다.

           // 파일이름으로 사용하기위해 현재유저 Domain\administrator 를 Domain_administrator 변경
           string s_cu = currentU.ToString().Replace("\\", "_");
           
            //쿠키의 값을 넣어 준다.
            cookie.Value = @"http://moss/ClientBin/" + "Stored_Picture_" + s_cu + ".xml";
            //쿠키를 더해 준다.
            this.Context.Response.AppendCookie(cookie);
        }

이것은 메소드 중에 RenderContent() 나 CreateChildControl()쯤에서 호출 해 주면 되겠다.


쿠키 가져오기  
            HttpCookie cookie = this.Context.Request.Cookies["UCookie"]; //get cookie
            //추가
            if (cookie == null)
                return;            


쿠키 문자열 자르기 참조
-> 이것은 사실 쿠키를 자를려고 한것이 아니라 url을 받아와서 /Pages/Defualt.aspx 전 까지 뽑아내려고 사용한것이다. 참조 만 하세요(여기서 /pages/를 중심으로 사이트명을 뽑아낼수 있다 라고 가정합니다.)


                string s_url = Url.ToUpper(); //모두 대문자로 통일 해서 처리
                string s_end = "PAGES/"; //pages/default.aspx 인경우
                string s_end2 = "DEFAULT.ASPX"; //default.aspx 인 경우
                int res = s_url.Length;//주소값의 전체 길이

                    if (s_url.IndexOf(s_end2, 0) > 0) //default.aspx 가 처음 나오는 인덱스 반환
                       res = s_url.IndexOf(s_end2, 0); //http://moss/pages/default.aspx 일경우 pages 남아 있음
                   
                    if (s_url.IndexOf(s_end, 0) > 0) //pages 가 있을 경우
                        res = s_url.IndexOf(s_end, 0);

                string siteD = s_url.Substring(0, res); //사이트명 뽑아 냈어요
           


 

관련글 더보기

댓글 영역