use tact_client::{HttpClient, ProtocolVersion, Region};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
tracing_subscriber::fmt::init();
let client_v1 = HttpClient::new(Region::US, ProtocolVersion::V1)?;
println!("V1 Base URL: {}", client_v1.base_url());
println!("\nFetching WoW versions...");
let response = client_v1.get_versions("wow").await?;
if response.status().is_success() {
let text = response.text().await?;
println!(
"First 500 chars of versions response:\n{}",
&text[..text.len().min(500)]
);
}
let client_v2 = HttpClient::new(Region::US, ProtocolVersion::V2)?;
println!("\nV2 Base URL: {}", client_v2.base_url());
println!("\nFetching product summary...");
let response = client_v2.get_summary().await?;
if response.status().is_success() {
println!("Summary request successful!");
}
let mut client = HttpClient::new(Region::US, ProtocolVersion::V1)?;
println!("\nOriginal region: {}", client.region());
client.set_region(Region::EU);
println!("New region: {}", client.region());
println!("New base URL: {}", client.base_url());
Ok(())
}