#Tổng quan về Session
Ứng dụng của bạn có 1 session cho mỗi người dùng để bạn có thể lưu một lượng data nhỏ mà sẽ tồn tại giữa nhiều request. Session chỉ khả dụng trong controller và view and có thể sử dụng một số cơ chế lưu trữ khác nhau.
- ActionDispatch::Session::CookieStore - Lưu mọi thứ trên client.
- ActionDispatch::Session::CacheStore - Lưu dữ liệu trong Rails cache.
- ActionDispatch::Session::ActiveRecordStore - Lưu dữ liệu trong một cơ sở dữ liệu sử dụng Active Record.(yêu cầu gem
activerecord-session_store
).
- ActionDispatch::Session::MemCacheStore - Lưu dữ liệu trong một memcached cluster (đây là một cách làm cũ; xem xét sử dụng CacheStore thay thế).
Tất cả session chứa một cookie để lưu một ID duy nhất cho mỗi session (bạn phải sử dụng một cookie, Rails sẽ không cho phép bạn truyền session ID trong URL vì thế rất là thiếu an toàn)
Với hầu hết các nơi chứa, ID này được sử dụng để tìm kiếm dữ liệu session trên server, ví dụ như trong bảng cơ sở dữ liệu. Có một excep