溫馨提示×

rust http超時如何設置

小樊
152
2024-11-26 14:22:22
欄目: 編程語言

在Rust中,你可以使用reqwest庫來發送HTTP請求并設置超時。以下是一個簡單的示例,展示了如何設置超時:

首先,確保你已經添加了reqwesttokio(如果你使用的是Tokio運行時)作為依賴項到你的Cargo.toml文件中:

[dependencies]
reqwest = { version = "0.11", features = ["json"] }
tokio = { version = "1", features = ["full"] }

然后,你可以在你的Rust代碼中設置超時:

use reqwest::{Client, Error};
use std::time::Duration;

#[tokio::main]
async fn main() -> Result<(), Error> {
    // 創建一個客戶端,并設置超時時間
    let client = Client::builder()
        .timeout(Duration::from_secs(5)) // 設置超時時間為5秒
        .build()?;

    // 發送一個GET請求
    let response = client.get("https://api.example.com/data")
        .send()
        .await?;

    // 處理響應
    if response.status().is_success() {
        let data: serde_json::Value = response.json().await?;
        println!("數據: {:?}", data);
    } else {
        println!("請求失敗,狀態碼: {}", response.status());
    }

    Ok(())
}

在這個示例中,我們創建了一個Client實例,并使用timeout方法設置了超時時間為5秒。然后,我們發送了一個GET請求,并在響應中處理了成功和失敗的情況。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女