A simple but powerful wrapper for the ip-api API.
In the example below we use tokio to convert our async main function into a sync one.
Tokio itself is not needed when using this crate.
use ip_api4rs::IpApiClient;
#[tokio::main]
async fn main() {
let client = IpApiClient::new();
let response = client.query_api_default("8.8.8.8").await.unwrap();
println!("{:#?}", response);
}
- fully async api (or blocking with the
blocking
feature) - simple to use
- supply custom structs to only get want you want
- Api-Token support
- SSL support
This doesn't mean that we would not implement features listed here.
We just won't implement them ourselves.
Feel free to open a pull request if you want to add more features.
- Batch requests
- non Json responses
- DNS Api support