要在 Rust 中使用代理服务器,您需要使用 reqwest
库和 tokio-proxy
库。首先,您需要在您的 Cargo.toml
文件中添加这两个库作为依赖项:
[dependencies]
reqwest = { version = "0.11", features = ["json"] }
tokio-proxy = "0.3"
然后,您可以在您的 Rust 代码中使用以下示例来设置代理服务器:
use reqwest::{Client, Error};
use tokio_proxy::Proxy;
use tokio_stream::StreamExt;
#[tokio::main]
async fn main() -> Result<(), Error> {
// 设置代理服务器的地址
let proxy_url = "http://127.0.0.1:8080";
// 创建一个代理对象
let proxy = Proxy::new(proxy_url)?;
// 创建一个 HTTP 客户端,并使用代理
let client = Client::builder()
.proxy(proxy)
.build()?;
// 发送请求到目标 URL,并通过代理服务器
let response = client.get("http://example.com")
.send()
.await?;
// 输出响应状态码
println!("Response status: {}", response.status());
// 读取响应内容
let body = response.text().await?;
println!("Response body: {}", body);
Ok(())
}
在这个示例中,我们首先设置了一个代理服务器的地址,然后创建了一个 Proxy
对象。接下来,我们创建了一个 Client
对象,并使用 proxy
方法将其与代理服务器关联起来。最后,我们发送了一个 GET 请求到目标 URL,并通过代理服务器接收响应。