mirror of
https://github.com/actix/examples
synced 2025-06-26 17:17:42 +02:00
add session ttl customization example
This commit is contained in:
@ -2,13 +2,14 @@ use std::future::{ready, Ready};
|
||||
|
||||
use actix_identity::Identity;
|
||||
use actix_web::{dev::Payload, web, Error, FromRequest, HttpRequest, HttpResponse};
|
||||
use diesel::prelude::*;
|
||||
use diesel::PgConnection;
|
||||
use diesel::{prelude::*, PgConnection};
|
||||
use serde::Deserialize;
|
||||
|
||||
use crate::errors::ServiceError;
|
||||
use crate::models::{Pool, SlimUser, User};
|
||||
use crate::utils::verify;
|
||||
use crate::{
|
||||
errors::ServiceError,
|
||||
models::{Pool, SlimUser, User},
|
||||
utils::verify,
|
||||
};
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
pub struct AuthData {
|
||||
|
@ -2,8 +2,10 @@ use actix_web::{web, HttpResponse};
|
||||
use diesel::{prelude::*, PgConnection};
|
||||
use serde::Deserialize;
|
||||
|
||||
use crate::email_service::send_invitation;
|
||||
use crate::models::{Invitation, Pool};
|
||||
use crate::{
|
||||
email_service::send_invitation,
|
||||
models::{Invitation, Pool},
|
||||
};
|
||||
|
||||
#[derive(Deserialize)]
|
||||
pub struct InvitationData {
|
||||
|
@ -3,8 +3,10 @@ extern crate diesel;
|
||||
|
||||
use actix_identity::{CookieIdentityPolicy, IdentityService};
|
||||
use actix_web::{middleware, web, App, HttpServer};
|
||||
use diesel::prelude::*;
|
||||
use diesel::r2d2::{self, ConnectionManager};
|
||||
use diesel::{
|
||||
prelude::*,
|
||||
r2d2::{self, ConnectionManager},
|
||||
};
|
||||
use time::Duration;
|
||||
|
||||
mod auth_handler;
|
||||
|
@ -2,9 +2,11 @@ use actix_web::{web, HttpResponse};
|
||||
use diesel::prelude::*;
|
||||
use serde::Deserialize;
|
||||
|
||||
use crate::errors::ServiceError;
|
||||
use crate::models::{Invitation, Pool, SlimUser, User};
|
||||
use crate::utils::hash_password;
|
||||
use crate::{
|
||||
errors::ServiceError,
|
||||
models::{Invitation, Pool, SlimUser, User},
|
||||
utils::hash_password,
|
||||
};
|
||||
|
||||
// UserData is used to extract data from a post request by the client
|
||||
#[derive(Debug, Deserialize)]
|
||||
@ -34,8 +36,10 @@ fn query(
|
||||
password: String,
|
||||
pool: web::Data<Pool>,
|
||||
) -> Result<SlimUser, crate::errors::ServiceError> {
|
||||
use crate::schema::invitations::dsl::{id, invitations};
|
||||
use crate::schema::users::dsl::users;
|
||||
use crate::schema::{
|
||||
invitations::dsl::{id, invitations},
|
||||
users::dsl::users,
|
||||
};
|
||||
let invitation_id = uuid::Uuid::parse_str(&invitation_id)?;
|
||||
|
||||
let conn: &PgConnection = &pool.get().unwrap();
|
||||
|
Reference in New Issue
Block a user