feat: auth

This commit is contained in:
Maulana Sodiqin
2025-03-13 23:40:16 +07:00
parent 298144bd36
commit acfb8259bc
17 changed files with 226 additions and 179 deletions
+6 -15
View File
@@ -1,31 +1,22 @@
use crate::{redisdb_init, Env, RedisClient};
use crate::{surrealdb_init, SurrealClient};
use axum::{serve, Router};
use std::env;
use std::{future::Future, net::SocketAddr};
use tokio::net::TcpListener;
use crate::{redisdb_init, RedisClient};
use crate::{surrealdb_init, SurrealClient};
pub async fn axum_init<F, Fut>(router_fn: F)
where
F: FnOnce(SurrealClient, RedisClient) -> Fut,
Fut: Future<Output = Router>,
{
let env = Env::new();
let surrealdb = surrealdb_init().await.expect("Failed surrealdb");
let redisdb = redisdb_init().await.expect("Failed redisdb");
let redisdb = redisdb_init().await.expect("Failed redisdb");
let router = router_fn(surrealdb, redisdb).await;
let addr = SocketAddr::from((
[0, 0, 0, 0],
env::var("PORT")
.unwrap_or_else(|_| "3000".to_string())
.parse()
.unwrap(),
));
let port = env.port;
let addr = SocketAddr::from(([0, 0, 0, 0], port));
let listener = TcpListener::bind(&addr).await.unwrap();
println!("Listening on http://{}", addr);
match serve(listener, router).await {
Ok(_) => println!("Server stopped gracefully."),
Err(err) => println!("Server encountered an error: {}", err),