mirror of
https://github.com/Astatin3/unshell.git
synced 2026-06-08 22:38:01 -06:00
Fix latency issue
This commit is contained in:
@@ -12,15 +12,19 @@ unshell-lib = {path = "../unshell-lib", default-featues = false}
|
||||
unshell-obfuscate = {path = "../unshell-obfuscate", default-featues = false}
|
||||
unshell-manager = {path = "../unshell-manager", default-featues = false}
|
||||
|
||||
|
||||
clap = {version = "4.5.53", features = ["derive"]}
|
||||
axum = "0.8.7"
|
||||
axum-extra = {version="0.12.2", features = ["typed-header"]}
|
||||
jsonwebtoken = {version = "10.2.0", features = ["aws_lc_rs"]}
|
||||
tokio = {version="1.48.0", features = ["full"] }
|
||||
|
||||
serde = {version = "1.0.228", features = ["derive"]}
|
||||
serde_json = "1.0.145"
|
||||
tokio = {version="1.48.0", features = ["full"] }
|
||||
bcrypt = "0.17.1"
|
||||
chrono = "0.4.42"
|
||||
static_init = "1.0.4"
|
||||
clap = {version = "4.5.53", features = ["derive"]}
|
||||
sled = "0.34.7"
|
||||
toml = "0.9.9"
|
||||
|
||||
jsonwebtoken = {version = "10.2.0", features = ["aws_lc_rs"]}
|
||||
bcrypt = "0.17.1"
|
||||
|
||||
sled = "0.34.7"
|
||||
|
||||
@@ -51,6 +51,11 @@ pub async fn start_api(address: &str, server: Server) {
|
||||
|
||||
router = route_get!(router, "/api/interface/", Server::get_tree2_root);
|
||||
router = route_get!(router, "/api/interface/{*path}", Server::get_tree2);
|
||||
|
||||
// router = router.route("/api/interface", get(Server::get_tree2_root));
|
||||
|
||||
// router = router.route("/api/interface/{*path}", post(Server::post_tree2));
|
||||
|
||||
router = route_post!(router, "/api/interface/{*path}", Server::post_tree2);
|
||||
|
||||
// router = route_get_log(router);
|
||||
|
||||
@@ -58,7 +58,7 @@ pub async fn authorize(mut req: Request, next: Next) -> Result<Response<Body>, A
|
||||
|
||||
let (_, token) = (header.next(), header.next());
|
||||
|
||||
let token_data: TokenData<Cliams> = match decode_jwt(token.unwrap().to_string()) {
|
||||
let _token_data: TokenData<Cliams> = match decode_jwt(token.unwrap().to_string()) {
|
||||
Ok(data) => data,
|
||||
Err(_) => {
|
||||
return Err(AuthError {
|
||||
@@ -68,18 +68,18 @@ pub async fn authorize(mut req: Request, next: Next) -> Result<Response<Body>, A
|
||||
}
|
||||
};
|
||||
|
||||
// Fetch the user details from the database
|
||||
let current_user = match retrieve_user_by_email(&token_data.claims.email) {
|
||||
Some(user) => user,
|
||||
None => {
|
||||
return Err(AuthError {
|
||||
message: "Unauthorized".to_string(),
|
||||
status_code: StatusCode::UNAUTHORIZED,
|
||||
});
|
||||
}
|
||||
};
|
||||
// // Fetch the user details from the database
|
||||
// let current_user = match retrieve_user_by_email(&token_data.claims.email) {
|
||||
// Some(user) => user,
|
||||
// None => {
|
||||
// return Err(AuthError {
|
||||
// message: "Unauthorized".to_string(),
|
||||
// status_code: StatusCode::UNAUTHORIZED,
|
||||
// });
|
||||
// }
|
||||
// };
|
||||
|
||||
req.extensions_mut().insert(current_user);
|
||||
// req.extensions_mut().insert(current_user);
|
||||
Ok(next.run(req).await)
|
||||
}
|
||||
|
||||
|
||||
@@ -15,15 +15,15 @@ use crate::{Server, auth::structs::CurrentUser};
|
||||
impl Server {
|
||||
pub async fn get_tree2_root(
|
||||
State(server): State<Server>,
|
||||
Extension(extension): Extension<CurrentUser>,
|
||||
// Extension(extension): Extension<CurrentUser>,
|
||||
) -> Json<Value> {
|
||||
Self::get_tree2(State(server), Path("".into()), Extension(extension)).await
|
||||
Self::get_tree2(State(server), Path("".into())).await
|
||||
}
|
||||
|
||||
pub async fn get_tree2(
|
||||
State(mut server): State<Server>,
|
||||
Path(path): Path<String>,
|
||||
Extension(_): Extension<CurrentUser>,
|
||||
// Extension(_): Extension<CurrentUser>,
|
||||
) -> Json<Value> {
|
||||
debug!("GET /api/interface/{}", path);
|
||||
|
||||
@@ -37,10 +37,12 @@ impl Server {
|
||||
pub async fn post_tree2(
|
||||
State(mut server): State<Server>,
|
||||
Path(path): Path<String>,
|
||||
Extension(_): Extension<CurrentUser>,
|
||||
// Extension(_): Extension<CurrentUser>,
|
||||
Json(tree_message): Json<TreeMessage>,
|
||||
) -> Json<Value> {
|
||||
debug!("POST /api/interface/{}", path);
|
||||
debug!("POST /api/interface/");
|
||||
|
||||
// Json(Value::Null)
|
||||
|
||||
let result = server
|
||||
.get(&path, tree_message)
|
||||
|
||||
Reference in New Issue
Block a user