7个版本
0.0.6 | 2024年6月26日 |
---|---|
0.0.5 | 2021年1月6日 |
0.0.4 | 2020年9月9日 |
0.0.2 | 2020年7月27日 |
0.0.1 | 2020年5月26日 |
#1725 在 异步
56 每月下载量
在 5 个crate中使用了(通过 koibumi-node)
38KB
772 代码行
此crate是一个最小的SOCKS5客户端库。
库可以在异步环境中使用。库的目的是与本地Tor SOCKS5代理一起使用。
lib.rs
:
此crate是一个最小的SOCKS5客户端库。
库可以在异步环境中使用。库的目的是与本地Tor SOCKS5代理一起使用。
示例
通过本地Tor SOCKS5代理(127.0.0.1:9050)连接到example.org:80的Web服务器,发出GET命令,读取并打印响应
#
use async_std::{
io::{prelude::WriteExt, ReadExt},
net::TcpStream,
};
use koibumi_net::{
domain::{Domain, SocketDomain},
socks::SocketAddr as SocksSocketAddr,
};
use koibumi_socks as socks;
let mut stream = TcpStream::connect("127.0.0.1:9050").await?;
let destination = SocksSocketAddr::Domain(
SocketDomain::new(
Domain::new("example.org").unwrap(), 80.into()));
let _dest = socks::connect(&mut stream, destination).await?;
stream.write_all(b"GET /\n").await?;
let mut bytes = Vec::new();
stream.read_to_end(&mut bytes).await?;
print!("{}", String::from_utf8_lossy(&bytes));
#
依赖项
~1MB
~15K SLoC