tide-flash 0.1.0

Tide (http-rs/tide) Flash Messages Middleware
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::FlashMessage;

pub trait RequestFlashExt {
    fn flash(&self) -> Option<Vec<FlashMessage>>;
}

impl<State> RequestFlashExt for tide::Request<State> {
    fn flash(&self) -> Option<Vec<FlashMessage>> {
        match self.cookie("_flash") {
            None => None,
            Some(cookie) => {
                let messages: Vec<FlashMessage> =
                    serde_json::from_str(cookie.value()).unwrap_or_default();
                Some(messages)
            }
        }
    }
}