[package]
name = "reqwest_ss_proxy"
version = "0.1.11"
edition = "2024"
license = "MulanPSL-2.0"
repository = "https://github.com/i18n-site/rust.git"
homepage = "https://github.com/i18n-site/rust/tree/dev/reqwest_ss_proxy"
description = "A reqwest middleware for proxying requests through a Shadowsocks server. 一个通过 Shadowsocks 服务器代理请求的 reqwest 中间件。"
keywords = [ "reqwest", "middleware", "proxy", "shadowsocks", "http" ]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [ "--cfg", "docsrs" ]
[dependencies]
thiserror = "2"
tower = "0.5"
bytes = "1.10.1"
futures-util = "0.3.31"
async-stream = "0.3.6"
pin-project = "1.1.10"
[dependencies.hyper-util]
version = "0.1.17"
features = [ "client-legacy", "tokio" ]
[dependencies.shadowsocks]
version = "1"
features = [ "stream-cipher", "aead-cipher", "aead-cipher-2022" ]
[dependencies.tokio]
version = "1.47.1"
features = [ "net", "io-util" ]
[dependencies.http-body-util]
version = "0.1.3"
optional = true
[dependencies.anyhow]
version = "1.0.100"
optional = true
[dependencies.reqwest-middleware]
version = "0.4.2"
optional = true
[dependencies.async-trait]
version = "0.1.89"
optional = true
[dependencies.http]
version = "1.3.1"
optional = true
[dependencies.hyper-tls]
version = "0.6.0"
optional = true
[dependencies.hyper]
version = "1.7.0"
features = [ "client", "http1", "http2" ]
[dependencies.reqwest]
version = "0.12.23"
features = [ "json", "stream" ]
[dev-dependencies]
static_init = "1.0.4"
tower-reqwest = "0.5.3"
regex = "1.11.2"
percent-encoding = "2.3.2"
log = "0.4.28"
[dev-dependencies.log_init]
version = "0.1.25"
path = "../log_init"
[dev-dependencies.url_fmt]
path = "../url_fmt"
version = "0.1.3"
[dev-dependencies.tokio]
version = "1.47.1"
features = [ "macros", "rt", "rt-multi-thread", "time", "sync" ]
[features]
default = [ "reqwest" ]
reqwest = [
"dep:anyhow",
"dep:reqwest-middleware",
"dep:async-trait",
"dep:http-body-util",
"dep:http",
"dep:hyper-tls"
]