Crates.io | proxied |
lib.rs | proxied |
version | 0.3.6 |
source | src |
created_at | 2024-05-16 16:09:04.748324 |
updated_at | 2024-09-12 17:09:18.415172 |
description | Asynchronous client connector for proxies |
homepage | |
repository | https://github.com/hdbg/proxied |
max_upload_size | |
id | 1242249 |
size | 26,164 |
Async SOCKS4/5 and HTTP(s) client connectors for Rust
Add the following to your Cargo.toml
file:
[dependencies]
proxied = "0.3"
use proxied::{Proxy, TCPConnection, NetworkTarget};
#[tokio::main]
async fn main() {
let proxy = Proxy::from_str("socks5://127.0.0.1:1080").unwrap();
let connection = proxy.connect(NetworkTarget::Domain {domain: "tcpbin.com", port: 4242}).await.unwrap();
// Send data to the echo server
let data = &[1, 2, 3, 4, 5, 6, 7, 8, 9];
connection.write(data).await.unwrap();
// Read the data back
let mut buf = vec![0; data.len()];
connection.read_exact(&mut buf).await.unwrap();
}