use std::net::IpAddr; use axum::{Json, extract::Query}; use serde::Deserialize; #[derive(Deserialize)] pub struct PingRequest { #[serde(with = "crate::utils::ip")] ip: IpAddr, } pub async fn main(Query(req): Query) -> Json { Json(ping::new(req.ip).send().is_ok()) }