test page
This commit is contained in:
Generated
+596
-85
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -6,7 +6,7 @@ edition = "2024"
|
||||
[dependencies]
|
||||
prost = "0.14.1"
|
||||
prost-types = "0.14.1"
|
||||
rocket = "0.5.1"
|
||||
rocket = { git = "https://github.com/rwf2/Rocket", rev = "504efef179622df82ba1dbd37f2e0d9ed2b7c9e4" }
|
||||
bytes = "1"
|
||||
rocket_prost_responder_derive = { path = "rocket_prost_responder_derive" }
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
use std::process::Command;
|
||||
|
||||
extern crate prost_build;
|
||||
|
||||
fn main() -> Result<(), std::io::Error> {
|
||||
@@ -11,5 +13,14 @@ fn main() -> Result<(), std::io::Error> {
|
||||
);
|
||||
|
||||
cfg.compile_protos(&["../protobuf/items.proto"], &["../protobuf"])?;
|
||||
|
||||
Command::new("pnpm")
|
||||
.arg("run")
|
||||
.arg("build")
|
||||
.current_dir("../frontend")
|
||||
.spawn()
|
||||
.unwrap()
|
||||
.wait()
|
||||
.unwrap();
|
||||
Ok(())
|
||||
}
|
||||
|
||||
+29
-3
@@ -1,3 +1,11 @@
|
||||
use rocket::{
|
||||
Request,
|
||||
fs::{
|
||||
FileServer,
|
||||
rewrite::{File, Rewrite},
|
||||
},
|
||||
};
|
||||
|
||||
#[macro_use]
|
||||
extern crate rocket;
|
||||
|
||||
@@ -11,8 +19,22 @@ fn get_user(user_list: &rocket::State<Vec<items::Person>>, name: String) -> Opti
|
||||
}
|
||||
|
||||
#[get("/")]
|
||||
fn index(user_list: &rocket::State<Vec<items::Person>>) -> String {
|
||||
format!("Hello, user amount: {}", user_list.len())
|
||||
fn get_users(user_list: &rocket::State<Vec<items::Person>>) -> items::PersonList {
|
||||
items::PersonList {
|
||||
person: user_list
|
||||
.inner()
|
||||
.to_vec()
|
||||
.iter_mut()
|
||||
.map(|x| {
|
||||
x.opinion.clear();
|
||||
x.clone()
|
||||
})
|
||||
.collect(),
|
||||
}
|
||||
}
|
||||
|
||||
fn redir_missing<'r>(p: Option<Rewrite<'r>>, _req: &Request<'_>) -> Option<Rewrite<'r>> {
|
||||
Some(p.unwrap_or_else(|| Rewrite::File(File::checked("../frontend/dist/index.html"))))
|
||||
}
|
||||
|
||||
#[launch]
|
||||
@@ -36,5 +58,9 @@ fn rocket() -> _ {
|
||||
|
||||
rocket::build()
|
||||
.manage(user_list)
|
||||
.mount("/", routes![index, get_user])
|
||||
.mount("/api", routes![get_users, get_user])
|
||||
.mount(
|
||||
"/",
|
||||
FileServer::new("../frontend/dist").rewrite(redir_missing),
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user