actix_quick_extract/headers/
user_agent.rs

1use actix_web::{http::header::USER_AGENT, FromRequest};
2use derive_more::{AsRef, Deref, Display, From, Into};
3
4use super::simple_header;
5
6/// The `user-agent` header.
7///
8/// ```no_run
9/// use actix_quick_extract::headers::UserAgent;
10/// use actix_web::get;
11///
12/// #[get("/")]
13/// pub async fn index(user_agent: UserAgent) -> String {
14///     format!("Your user agent Header is: {}", user_agent)
15/// }
16/// ```
17#[derive(Debug, Clone, PartialEq, Eq, Hash, Display, Into, AsRef, Deref, From)]
18#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
19#[as_ref(str)]
20#[deref(forward)]
21#[repr(transparent)]
22pub struct UserAgent(pub String);
23
24simple_header!(UserAgent, USER_AGENT, "User-Agent");