mirror of
https://github.com/tokio-rs/axum.git
synced 2025-01-11 12:31:25 +01:00
Improve error message of MissingExtension
rejections (#72)
Now includes the name of missing type.
This commit is contained in:
parent
6f30d4aa6a
commit
2cf28c6794
3 changed files with 8 additions and 2 deletions
|
@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
- Implement `Deref` most extractors ([#56](https://github.com/tokio-rs/axum/pull/56))
|
||||
- Return `405 Method Not Allowed` for unsupported method for route ([#63](https://github.com/tokio-rs/axum/pull/63))
|
||||
- Add extractor for remote connection info ([#55](https://github.com/tokio-rs/axum/pull/55))
|
||||
- Improve error message of `MissingExtension` rejections ([#72](https://github.com/tokio-rs/axum/pull/72))
|
||||
- Improve documentation for routing ([#71](https://github.com/tokio-rs/axum/pull/71))
|
||||
- Clarify required response body type when routing to `tower::Service`s ([#69](https://github.com/tokio-rs/axum/pull/69))
|
||||
- Add `axum::body::box_body` to converting an `http_body::Body` to `axum::body::BoxBody` ([#69](https://github.com/tokio-rs/axum/pull/69))
|
||||
|
|
|
@ -831,7 +831,12 @@ where
|
|||
.extensions()
|
||||
.ok_or(ExtensionsAlreadyExtracted)?
|
||||
.get::<T>()
|
||||
.ok_or(MissingExtension)
|
||||
.ok_or_else(|| {
|
||||
MissingExtension::from_err(format!(
|
||||
"Extension of type `{}` was not found. Perhaps you forgot to add it?",
|
||||
std::any::type_name::<T>()
|
||||
))
|
||||
})
|
||||
.map(|x| x.clone())?;
|
||||
|
||||
Ok(Extension(value))
|
||||
|
|
|
@ -66,7 +66,7 @@ define_rejection! {
|
|||
#[body = "Missing request extension"]
|
||||
/// Rejection type for [`Extension`](super::Extension) if an expected
|
||||
/// request extension was not found.
|
||||
pub struct MissingExtension;
|
||||
pub struct MissingExtension(BoxError);
|
||||
}
|
||||
|
||||
define_rejection! {
|
||||
|
|
Loading…
Reference in a new issue