2012-09-10 3 views
0

나는 사용자가 개별 링크를 만들 수있는 grails의 제휴 시스템을 연구 중이며,이 링크를 방문하는 손님들은 고유 한 세션 ID를 가진 쿠키를 얻는다. 일부 고객이 며칠 후에 다시 내 웹 응용 프로그램에 올 경우 해당 고객이 이미 여기에 있었고 사용자가이 웹 사이트를 과거에 내 웹 사이트로 가져 왔음을 알고 싶습니다.grails에서 쿠키, 사용자 추적을 구현하는 방법은 무엇입니까?

어떻게 이것을 grails에서 구현합니까? 나는 필터를 가지고 말할 것이다. 하지만 어떻게 그런 필터를 구현해야합니까? grails 기본 세션 ID를 사용하면 무효화되고 서버 메모리 (RAM) 때문에 grails 세션 수명을 업그레이드 할 수 없으므로 좋지 않습니다. 아니면 항상 sessionId가 있고 새로 고침 만되기 때문에 grails의 세션 수명이 1 시간이 될 수 있으며 한 시간 이상을 모두 추적 할 수 있습니까?

아니면 고유 한 세션 ID로 새 쿠키를 설정해야합니까?

+0

사용자가 로그인을 원한다면 이것을 스프링 보안 – chrislovecnm

+0

에 묶어 두는 것이 좋습니다. 사용자 로그인을 위해 이미 내 프로젝트에 스프링 보안 코어 플러그인을 사용하고 있습니다. 하지만 내 웹 응용 프로그램에 계정이없는 손님을 추적하고 싶습니다. – whitenexx

답변

1

적어도 하나의 필터와 쿠키가 필요합니다.

방문객이 사이트를 처음 방문 할 때 제휴 ID를 요청 매개 변수로 정의했다고 생각합니다. 방문자가 이미 쿠키 세트를 가지고 있는지 보려면 before 필터를 만들어야합니다.

판매를 제휴사와 연결하려는 경우 고유 방문자 ID, 방문자를 언급 한 제휴사 ID가 필요하지 않습니다. 필터에서 제휴사 ID 요청 매개 변수는 있지만 쿠키가없는 경우 쿠키를 설정할 수 있습니다. 그런 다음 판매를 처리 할 때 제휴 쿠키가 있는지 확인할 수 있습니다.

고급 메트릭을 얻으려면 두 개의 필터 (또는 두 가지 일을하는 필터 하나)가 필요할 것입니다. 하나는 쿠키를 설정하고 다른 하나는 방문을 추적합니다. 추적하려는 항목을 알면 플래그를 사용자 세션에 추가하여 메트릭을 정확하게 유지할 수 있습니다 (예 : 각 요청을 고려하지 않은 경우 증가 후 사용자 세션에 플래그를 넣을 수 있음). 방문객 수)

+0

답변 해 주셔서 감사합니다. – whitenexx