|
1 | | -use crate::types::{RequestProgress, RequestStatus, Response, ERROR_KIND_NONE, ERROR_KIND_TIMEOUT, ERROR_KIND_CONNECTION, ERROR_KIND_REDIRECT, ERROR_KIND_INVALID_STATUS, ERROR_KIND_BODY, ERROR_KIND_DECODE, ERROR_KIND_BUILDER, ERROR_KIND_REQUEST, ERROR_KIND_FILE_SYSTEM, ERROR_KIND_UNKNOWN}; |
| 1 | +use crate::types::{ |
| 2 | + ERROR_KIND_BODY, ERROR_KIND_BUILDER, ERROR_KIND_CONNECTION, ERROR_KIND_DECODE, |
| 3 | + ERROR_KIND_FILE_SYSTEM, ERROR_KIND_INVALID_STATUS, ERROR_KIND_NONE, ERROR_KIND_REDIRECT, |
| 4 | + ERROR_KIND_REQUEST, ERROR_KIND_TIMEOUT, ERROR_KIND_UNKNOWN, RequestProgress, RequestStatus, |
| 5 | + Response, |
| 6 | +}; |
2 | 7 | use reqwest::Response as ReqwestResponse; |
3 | 8 | use std::{ |
4 | 9 | error::Error as StdError, |
@@ -30,11 +35,11 @@ fn analyze_reqwest_error(e: &reqwest::Error) -> (u8, String, Option<String>, Opt |
30 | 35 | }; |
31 | 36 |
|
32 | 37 | let main_message = e.to_string(); |
33 | | - |
| 38 | + |
34 | 39 | let url = e.url().map(|u| u.to_string()); |
35 | | - |
| 40 | + |
36 | 41 | let source = e.source().map(|s| s.to_string()); |
37 | | - |
| 42 | + |
38 | 43 | let detailed_message = if let Some(ref src) = source { |
39 | 44 | format!("{}: {}", main_message, src) |
40 | 45 | } else { |
@@ -193,12 +198,12 @@ pub async fn process_request( |
193 | 198 | Err(e) => { |
194 | 199 | // Request error (connection failed, etc.) |
195 | 200 | let (error_kind, error_message, error_url, error_source) = analyze_reqwest_error(&e); |
196 | | - |
| 201 | + |
197 | 202 | let mut progress = progress_info.write().unwrap(); |
198 | 203 | progress.status = RequestStatus::Error; |
199 | 204 | progress.final_response = Some(Response { |
200 | 205 | status: e.status().unwrap_or(reqwest::StatusCode::BAD_REQUEST), |
201 | | - version: reqwest::Version::HTTP_11, // Default to HTTP/1.1 for errors |
| 206 | + version: reqwest::Version::HTTP_11, // Default to HTTP/1.1 for errors |
202 | 207 | headers: reqwest::header::HeaderMap::new(), |
203 | 208 | body: Err(error_message), |
204 | 209 | error_kind, |
|
0 commit comments