forked from packages/rocket_session
				
			
							parent
							
								
									bc2180d1e4
								
							
						
					
					
						commit
						b0a2d8c910
					
				| @ -0,0 +1,28 @@ | ||||
| #[macro_use] | ||||
| extern crate rocket; | ||||
| 
 | ||||
| use std::time::Duration; | ||||
| 
 | ||||
| type Session<'a> = rocket_session::Session<'a, u64>; | ||||
| 
 | ||||
| #[launch] | ||||
| fn rocket() -> _ { | ||||
|     // This session expires in 15 seconds as a demonstration of session configuration
 | ||||
|     rocket::build() | ||||
|         .attach(Session::fairing().with_lifetime(Duration::from_secs(15))) | ||||
|         .mount("/", routes![index]) | ||||
| } | ||||
| 
 | ||||
| #[get("/")] | ||||
| fn index(session: Session) -> String { | ||||
|     let count = session.tap(|n| { | ||||
|         // Change the stored value (it is &mut)
 | ||||
|         *n += 1; | ||||
| 
 | ||||
|         // Return something to the caller.
 | ||||
|         // This can be any type, 'tap' is generic.
 | ||||
|         *n | ||||
|     }); | ||||
| 
 | ||||
|     format!("{} visits", count) | ||||
| } | ||||
					Loading…
					
					
				
		Reference in new issue