pub async fn create_session(
pool: &Pool<MySql>,
user_id: i64,
session_token: &str,
refresh_token: Option<&str>,
ip_address: &str,
user_agent: &str,
expires_at: DateTime<Utc>,
) -> Result<i64>
Expand description
Creates a new user session.
This function creates a new session for a user after successful authentication.
§Arguments
pool
- Database connection pool for executing the queryuser_id
- ID of the authenticated usersession_token
- Generated session tokenrefresh_token
- Optional refresh tokenip_address
- Client IP addressuser_agent
- Client user agent stringexpires_at
- Session expiration time
§Returns
Ok(i64)
- ID of the created sessionErr(anyhow::Error)
- Failed to create session