pub struct Body { /* private fields */ }Implementations§
Source§impl Body
impl Body
pub fn new() -> Body
pub fn from_string(s: &str) -> Body
pub fn from_bytes(b: Vec<u8>) -> Body
pub fn as_string(&self) -> String
pub fn as_bytes(&self) -> &[u8] ⓘ
Sourcepub fn json<T>(&self) -> Option<T>where
T: DeserializeOwned,
pub fn json<T>(&self) -> Option<T>where
T: DeserializeOwned,
Examples found in repository?
examples/routing.rs (line 34)
18fn main() {
19 let mut app = Server::new();
20
21 // Basic GET route
22 app.get("/", |_req| async {
23 Response::text("Welcome to Axeon API server!")
24 });
25
26 // Route with path parameter
27 app.get("/users/:id", |req| async move {
28 let user_id = req.params.get("id").unwrap();
29 Response::text(format!("User ID: {}", user_id))
30 });
31
32 // POST request with JSON body
33 app.post("/users", |req| async move {
34 match req.body.json::<User>() {
35 Some(user) => Response::ok(&user),
36 None => Err(ServerError::BadRequest("Invalid JSON body".to_string())),
37 }
38 });
39
40 // Group routes under /api prefix
41 let mut api = Router::new();
42 api.get("/status", |_req| async {
43 Response::ok(&serde_json::json!({
44 "status": "operational",
45 "version": "1.0.0"
46 }))
47 });
48
49 // Mount the API router to the main server
50 app.mount("/api", api);
51
52 app.listen("127.0.0.1:3000")
53 .expect("Server failed to start")
54}pub fn x_www_form_urlencoded<T>(&self) -> Option<T>where
T: DeserializeOwned,
pub fn form_data<T>(&self) -> Option<T>where
T: DeserializeOwned,
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Body
impl RefUnwindSafe for Body
impl Send for Body
impl Sync for Body
impl Unpin for Body
impl UnwindSafe for Body
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more