| 423 | } |
| 424 | |
| 425 | async fn execute_request( |
| 426 | &self, |
| 427 | client: &reqwest::Client, |
| 428 | prepared: &PreparedRequest, |
| 429 | timeout: Option<Duration>, |
| 430 | h3: bool, |
| 431 | ) -> Result<Response, reqwest::Error> { |
| 432 | let mut req = client |
| 433 | .request(prepared.method.clone(), prepared.url.clone()) |
| 434 | .headers(prepared.headers.clone()); |
| 435 | |
| 436 | if h3 { |
| 437 | req = req.version(Version::HTTP_3); |
| 438 | } |
| 439 | |
| 440 | if let Some(t) = timeout { |
| 441 | req = req.timeout(t); |
| 442 | } |
| 443 | |
| 444 | if let Some(b) = prepared.body.clone() { |
| 445 | req = req.body(b); |
| 446 | } |
| 447 | |
| 448 | req.send().await |
| 449 | } |
| 450 | |
| 451 | async fn send( |
| 452 | &self, |