Dynamically check username
This commit is contained in:
21
src/controllers/admin_api.rs
Normal file
21
src/controllers/admin_api.rs
Normal file
@ -0,0 +1,21 @@
|
||||
use actix::Addr;
|
||||
use actix_web::{HttpResponse, Responder, web};
|
||||
|
||||
use crate::actors::users_actor::{FindUserByUsername, UsersActor};
|
||||
|
||||
#[derive(serde::Deserialize)]
|
||||
pub struct FindUserNameReq {
|
||||
username: String,
|
||||
}
|
||||
|
||||
#[derive(serde::Serialize)]
|
||||
struct FindUserResult {
|
||||
user_id: Option<String>,
|
||||
}
|
||||
|
||||
pub async fn find_username(req: web::Form<FindUserNameReq>, users: web::Data<Addr<UsersActor>>) -> impl Responder {
|
||||
let res = users.send(FindUserByUsername(req.0.username)).await.unwrap();
|
||||
HttpResponse::Ok().json(FindUserResult {
|
||||
user_id: res.0.map(|r| r.uid)
|
||||
})
|
||||
}
|
@ -2,4 +2,5 @@ pub mod assets_controller;
|
||||
pub mod base_controller;
|
||||
pub mod login_controller;
|
||||
pub mod settings_controller;
|
||||
pub mod admin_controller;
|
||||
pub mod admin_controller;
|
||||
pub mod admin_api;
|
Reference in New Issue
Block a user