The curl command
curl --cookie counter=42 "https://httpbin.org/get"
and the output:
{
"args": {},
"headers": {
"Accept": "*/*",
"Cookie": "counter=42",
"Host": "httpbin.org",
"User-Agent": "curl/8.2.1",
"X-Amzn-Trace-Id": "Root=1-65b2455d-400413860278b6624dc30284"
},
"origin": "46.120.9.250",
"url": "https://httpbin.org/get"
}
The dependencies
examples/simple-blocking-http-reqwest-sending-cookie/Cargo.toml
[package]
name = "simple-blocking-http-reqwest-sending-cookie"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
reqwest = { version = "0.11", features = ["blocking", "json"] }
serde_json = "1.0"
The code
examples/simple-blocking-http-reqwest-sending-cookie/src/main.rs
use reqwest::blocking::Client;
fn main() {
let client = Client::new();
match client.get("https://httpbin.org/get").header("Cookie", "counter=42").send() {
Ok(resp) => {
let data: serde_json::Value = resp.json().unwrap();
println!("{:#?}", data);
},
Err(err) => eprintln!("{}", err),
}
}
The output
Object {
"args": Object {},
"headers": Object {
"Accept": String("*/*"),
"Cookie": String("counter=42"),
"Host": String("httpbin.org"),
"X-Amzn-Trace-Id": String("Root=1-65b244fe-37f44f2f5385618e52e9397b"),
},
"origin": String("46.120.9.250"),
"url": String("https://httpbin.org/get"),
}