9.3.1 세션
로그인한 사용자 정보를 유지하려면 세션이 필요하다. 세션 관리를 위해 negroni에서 사용할 수 있는 negroni-sessions 패키지를 사용해 보자. negroni-sessions 패키지는 세션 기능을 제공한다.
세션 핸들러 등록
웹 애플리케이션이 구동될 때 세션 영역이 만들어지도록 다음과 같이 구현한다.
▼ main.go
import ( /* ... */ "github.com/codegangsta/negroni" "github.com/goincremental/negroni-sessions" "github.com/goincremental/negroni-sessions/cookiestore" ) const ( // 애플리케이션에서 사용할 세션의 키 정보 sessionKey = "simple_chat_session" sessionSecret = "simple_chat_session_secret" ) func main() { /* ... */ // negroni 미들웨어 생성 n := negroni.Classic() store := cookiestore.New([]byte(sessionSecret)) n.Use(sessions.Sessions(sessionKey, store)) /* ... */ }
쿠키 기반의 세션 저장소를 만들어 negroni에서 사용할 수 있게 등록했다.