mod server;
mod client;
use tokio::sync::mpsc;
use server::start_server;
use client::send_request_to_server;
#[tokio::main]
async fn main() {
let (tx, mut rx) = mpsc::channel(1);
let server_handle = tokio::spawn(start_server("127.0.0.1:8080", "https://www.example.com/api".to_string(), tx));
tokio::time::sleep(tokio::time::Duration::from_secs(1)).await;
match send_request_to_server("http://127.0.0.1:8080").await {
Ok(response) => {
println!("Received API response in main: {}", response);
}
Err(e) => {
eprintln!("Error sending request: {}", e);
}
}
while let Some(api_response) = rx.recv().await {
println!("Received API response in main: {}", api_response);
}
if let Err(e) = server_handle.await {
eprintln!("Server error: {}", e);
}
}