A netrc library for Rust, with support for reqwest via reqwest-middleware.
The reqwest-netrc
crate is a middleware for reqwest
to support the netrc
file.
To bring this crate into your repository, either add reqwest-netrc
to your
Cargo.toml
, or run:
> cargo add reqwest-netrc
The common scenario is to have a ~/.netrc
file or the NETRC
environement variable defined:
use reqwest::Client;
use reqwest_middleware::ClientBuilder;
use reqwest_netrc::NetrcMiddleware;
// ...
let client = ClientBuilder::new(Client::builder().build().unwrap())
.with_init(NetrcMiddleware::new().unwrap())
.build();
let res = client.get("https://domain.io/api/hello").send().await;
// ...
The rust-netrc
crate is a parser for the netrc
files.
To bring this crate into your repository, either add rust-netrc
to your
Cargo.toml
, or run:
> cargo add rust-netrc
use netrc::Netrc;
fn main() {
let nrc = Netrc::new().unwrap();
for (host, auth) in nrc.hosts {
println!("{host}: {auth:?}");
}
}
Feedback and contributions are very welcome.
This project is licensed under MIT.