diff --git a/src/optional.rs b/src/optional.rs index bd02ca6..42cb1eb 100644 --- a/src/optional.rs +++ b/src/optional.rs @@ -61,7 +61,7 @@ where D: serde::Deserializer<'de>, { let s: Option = Deserialize::<'de>::deserialize(deserializer)?; - match s.as_deref() { + match s.as_deref().map(|s| s.trim()) { None | Some("") => Ok(Optional { inner: None }), Some(s) => T::from_str(&s) .map_err(D::Error::custom)