쿠키(Cookie) 방식이 아마... 1998년쯤 제안되어서 사용된 것으로 기억하는데..
아직도 광범위하게 사용되고 있음.
머 기본 아이디어는..... 단순해서리... 굳이 어렵게 생각할건 엄뜸.
사용자 브라우저(뽜이어뽁스, 인스플뤄등)에서 웹사이트에서 넘겨받은 값을 저장하고 있다가.. 웹사이트에서 필요로 할 때 마다 넘겨주는 데이터를 의미하는데...
(즉, 식당에서 번호표를 줄 선 손님들한테 노나 줬다가 직원이 "몇번 이시죠?" 라고 물으면 번호표를 보고 "저 몇번인데요" 하는 거임)
(또다른 예로... 개나라당이 떡검한테 공천권 순서표 노나 줬다가... 개나라가 "몇번째고?"라고 물으면... "지가요 행님 정적도 누명뒤집어서리 솎아냈고요~ 좀 신경써 주이소~ 그라고, 저 몇번입네다" 라고 대답하는거임.)
아..또 배가 산으로 갔다.
암튼, 근데 이것이 클라이언트 브라우저에 있다보니 조작이 가능함. 이를 확인키 위해 서버쪽에서도 서로 값을 가지고 있어줘야 함. 그래서리 비교해보도록 함.
단순 쿠키를 넣는 방법에 대해서는 나중에 다시 알아보도록 하고..
일단 세션을 활용하는 방법은 다음과 같음( 즉, 쿠키도 쓰고 서버에다가 저장도 하고)
1. rake db:sessions:create
2. rake db:migrate
3. application_controller.rb 파일을 열고
protect_from_forgery:secret=>'8fc080370e56e929a2d5afca5540a0f7'
요 줄을 위처럼 수정해 줌. 근데 뒤의 난수는 막 때려넣으면 될 듯 함.
3.5 config/environment.rb 파일을 열고... 젤 끝에 쯤에다가
config.action_controller.session_store=:active_record_store
config.action_controller.session={
:session_key=>'_dduckgum_session',
:secret=>'f914e9b1bbdb829688de8512f...9b1810a4e238a61dfd922dc9dd62521'
}
이걸 우겨 넣음. 물론, 적절히 위 내용에서 값 수정해도 됨.
4. script/server 재실행
5. 사용법
sessions[:user] = "userid" : 할당할때(주로 로긴할때겠지)
sessions[:user] = nil : 값 날릴때(당빠 로그아웃이지)
필요할때마다 sessions[:user] 를 불러다 쓰면 됨.
":user"는 당연히 느그들이 원하는 변수명 갖다 쓰면 됨.
즉, sessions[:dduckgum] 라고 써도 된다는 말임.
6. 가끔!!
다 하라고 하는대로 했는데도 안될수도 있다. 그땐 db가 꼬였다고 생각하고, rake db:sessions:clear 로 함 날려주고 새로 해보자.
안되면 브라우저 죽였다 띄우는 것도 한 방법..
@여기서 개나라당은 한나라당 아님. 오케? 사면바리 개놜하당아.
@여기서 떡검은 대한민국 검찰 아님. 절대 아님. 오케? 난독증 색검아.
@습하 더러버서..
댓글 없음:
댓글 쓰기