tide_flash/
request_ext.rs

1use crate::FlashMessage;
2
3pub trait RequestFlashExt {
4    fn flash(&self) -> Option<Vec<FlashMessage>>;
5}
6
7impl<State> RequestFlashExt for tide::Request<State> {
8    fn flash(&self) -> Option<Vec<FlashMessage>> {
9        match self.cookie("_flash") {
10            None => None,
11            Some(cookie) => {
12                let messages: Vec<FlashMessage> =
13                    serde_json::from_str(cookie.value()).unwrap_or_default();
14                Some(messages)
15            }
16        }
17    }
18}