1use flyer::{
2 request::Request,
3 response::Response,
4 server,
5};
6
7pub async fn home_view(req: Request, res: Response) -> Response {
8 let user_id = req.session("user_id");
9 if user_id == "" {
10 return res.html("<h1>Not logged in</h1>");
11 }
12 return res.html(format!("<h1>Welcome user {}</h1>", user_id).as_str());
13}
14
15pub async fn login(_req: Request, res: Response) -> Response {
16 return res
18 .set_session("user_id", "1")
19 .back();
20}
21
22pub async fn logout(_req: Request, res: Response) -> Response {
23 return res
25 .remove_session("user_id")
26 .back();
27}
28
29fn main() {
30 let server = server("127.0.0.1", 9999);
31
32 server.router().group("/", |router| {
33 router.get("/", home_view);
34 router.get("login", login);
35 router.get("logout", logout);
36 });
37
38 print!("\r\n\r\nRunning server: {}\r\n\r\n", server.address());
39
40 server.listen();
41}