use cookie::Cookie;
use ri_cookie_header_string::CookieHeaderStringExt;
fn main() {
println!("=== Example 1: Basic Cookie Parsing ===");
let cookie_header = "name=value; name2=value2; name3=value3";
let cookies: Vec<_> = Cookie::header_string_parse(cookie_header).filter_map(|result| result.ok()).collect();
println!("Parsed {} cookies:", cookies.len());
for cookie in &cookies {
println!(" {} = {}", cookie.name(), cookie.value());
}
println!("\n=== Example 2: Semicolons in Values ===");
let cookie_header = "session=abc;123; other=value";
let cookies: Vec<_> = Cookie::header_string_parse(cookie_header).filter_map(|result| result.ok()).collect();
println!("Parsed {} cookies:", cookies.len());
for cookie in &cookies {
println!(" {} = {}", cookie.name(), cookie.value());
}
println!("\n=== Example 3: Special Characters ===");
let cookie_header = "session=abc;def;ghi; token=!@#$%^&*()";
let cookies: Vec<_> = Cookie::header_string_parse(cookie_header).filter_map(|result| result.ok()).collect();
println!("Parsed {} cookies:", cookies.len());
for cookie in &cookies {
println!(" {} = {}", cookie.name(), cookie.value());
}
}