pub fn resolve(result: Result<Response, Error>) -> Response
Convert a handler result into a definite Response.
Response
Useful in middleware that needs to observe both success and error paths before returning — e.g. attaching an X-Request-Id header to every response regardless of outcome.
X-Request-Id
14async fn request_id(mut req: Request, next: Next) -> Result<Response, Error> { 15 let id = REQUEST_COUNTER.fetch_add(1, Ordering::Relaxed); 16 req.ctx_mut().insert(RequestId(id)); 17 let mut resp = resolve(next.run(req).await); 18 if let Ok(header) = format!("req-{id}").parse() { 19 resp.headers_mut().insert("x-request-id", header); 20 } 21 Ok(resp) 22}