diff --git a/src/transport/middleware/headers.rs b/src/transport/middleware/headers.rs index b901325..b1c28d4 100644 --- a/src/transport/middleware/headers.rs +++ b/src/transport/middleware/headers.rs @@ -2,13 +2,15 @@ use async_trait::async_trait; use reqwest::{Request, Response}; use reqwest_middleware::{Middleware, Next, Result}; -pub const USER_AGENT: &str = "osrs-prometheus-exporter"; - -pub struct DefaultHeaderMiddleware {} +pub struct DefaultHeaderMiddleware { + user_agent: String, +} impl DefaultHeaderMiddleware { pub fn new() -> Self { - DefaultHeaderMiddleware {} + DefaultHeaderMiddleware { + user_agent: format!("{}/{}", env!("CARGO_PKG_NAME"), env!("CARGO_PKG_VERSION")) + } } } @@ -20,8 +22,8 @@ impl Middleware for DefaultHeaderMiddleware { extensions: &mut task_local_extensions::Extensions, next: Next<'_>, ) -> Result { - req.headers_mut() - .insert("User-Agent", USER_AGENT.parse().unwrap()); + let ua = self.user_agent.as_str(); + req.headers_mut().insert("User-Agent", ua.parse().unwrap()); next.run(req, extensions).await }