Skip to main content

Crate liburlx

Crate liburlx 

Source
Expand description

liburlx — A memory-safe URL transfer library.

This is an idiomatic Rust reimplementation of libcurl, providing both blocking (Easy) and async (Multi) APIs for URL transfers.

§Quick Start

The library is currently in early development. The Easy API for simple transfers is coming in Phase 1.

Re-exports§

pub use auth::AuthCredentials;
pub use auth::AuthMethod;
pub use auth::ProxyAuthCredentials;
pub use auth::ProxyAuthMethod;
pub use cookie::CookieJar;
pub use dns::DnsCache;
pub use dns::DnsResolver;
pub use easy::Easy;
pub use easy::HttpVersion;
pub use error::Error;
pub use hsts::HstsCache;
pub use multi::Multi;
pub use multi::PipeliningMode;
pub use progress::make_progress_callback;
pub use progress::ProgressCallback;
pub use progress::ProgressInfo;
pub use protocol::http::multipart::MultipartForm;
pub use protocol::http::response::PushedResponse;
pub use protocol::http::response::Response;
pub use protocol::http::response::TransferInfo;
pub use share::Share;
pub use share::ShareType;
pub use throttle::SpeedLimits;
pub use tls::TlsConfig;
pub use tls::TlsVersion;
pub use url::Url;

Modules§

auth
HTTP authentication mechanisms.
cookie
Cookie jar engine.
dns
DNS resolution and caching.
easy
Single-transfer blocking API.
error
Error types for liburlx.
glob
URL globbing — pattern expansion for URL templates.
hsts
HTTP Strict Transport Security (HSTS) enforcement.
multi
Concurrent transfer API.
netrc
.netrc file parsing for credential lookup.
progress
Progress reporting for transfers.
protocol
Protocol handler definitions.
proxy
Proxy protocol implementations.
share
Shared state for cross-handle data sharing.
throttle
Transfer speed throttling and enforcement.
tls
TLS connector using rustls.
url
URL parsing with curl compatibility quirks.

Type Aliases§

Result
Convenience result type for liburlx operations.