8 releases (4 breaking)
0.5.2 | Aug 5, 2024 |
---|---|
0.5.1 | May 24, 2024 |
0.5.0 | Oct 18, 2023 |
0.4.1 | Dec 14, 2022 |
0.1.0 | Mar 29, 2022 |
#560 in Web programming
439 downloads per month
17KB
184 lines
World Time Wrapper
This is a simple wrapper for the World Time API. This crate is based on the WorldTimeAPI wrapper by Dulatr.
Usage
To use this crate, add worldtimeapi
to your Cargo.toml
:
[dependencies]
worldtimeapi = "0.5.1"
Then create a client for an endpoint (currently they only offer "ip" and "timezone"):
use std::collections::HashMap;
use worldtimeapi::service::{Client, Endpoint};
#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = Client::new(Endpoint::Timezone).await?;
let mut payload = HashMap::new();
payload.insert("area", "America");
payload.insert("location", "New_York");
let result = client.get(payload).await?;
println!("{}", result.datetime());
Ok(())
}
To get a list of regions and locations, use the regions
method:
use worldtimeapi::service::{Client, Endpoint};
#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = Client::new(Endpoint::Timezone).await?;
let regions = client.regions();
println!("{:?}", regions);
Ok(())
}
Dependencies
~6–17MB
~228K SLoC