Crate async_http_proxy[−][src]
Expand description
async-http-proxy is a lightweight asynchronous HTTP proxy client library, which can be used
to connect a to a TCP port via HTTP Connect proxy. It can use Tokio and
async-std as asynchronous runtime.
Example
The following example shows how to connect to example.org via Connect proxy (tokio):
use async_http_proxy::http_connect_tokio;
use std::error::Error;
use tokio::net::TcpStream;
// Features "runtime-tokio" have to be activated
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let mut stream = TcpStream::connect("127.0.0.1:8080").await?;
http_connect_tokio(&mut stream, "example.org", 443).await?;
// stream is now connect to github.com
Ok(())
}The following example shows how to connect to example.org with Basic Authentication via
Connect proxy (async-std):
use async_http_proxy::http_connect_async_std_with_basic_auth;
use async_std::net::TcpStream;
use async_std::task;
use std::error::Error;
// Features "async-std-tokio" and "basic-auth" have to be activated
fn main() -> Result<(), Box<dyn Error>> {
task::block_on(async {
let mut stream = TcpStream::connect("127.0.0.1:8080").await?;
http_connect_async_std_with_basic_auth(
&mut stream,
"example.org",
443,
"username",
"password",
)
.await?;
// stream is now connect to github.com
Ok(())
})
}Enums
This enum contains all errors, which can occur during the HTTP CONNECT.
Constants
The maximum HTTP Headers, which can be parsed.
The maximum length of the response header.
Functions
runtime-async-stdConnect to the server defined by the host and port and check if the connection was established.
runtime-async-std and basic-authConnect to the server defined by the host and port with basic auth and check if the connection
was established.
runtime-tokioConnect to the server defined by the host and port and check if the connection was established.
runtime-tokio and basic-authConnect to the server defined by the host and port with basic auth and check if the connection
was established.