Function create_session

Source
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 query
  • user_id - ID of the authenticated user
  • session_token - Generated session token
  • refresh_token - Optional refresh token
  • ip_address - Client IP address
  • user_agent - Client user agent string
  • expires_at - Session expiration time

§Returns

  • Ok(i64) - ID of the created session
  • Err(anyhow::Error) - Failed to create session