7 releases
0.1.6 | Aug 23, 2021 |
---|---|
0.1.5 | Aug 23, 2021 |
#9 in #google-maps
28KB
602 lines
Google Maps Places for Rust
Simple crate to get Google Maps Place results.
This library can be used to fetch details from Google Maps Places API
using place_id
from Place Search.
Getting started
-
Add to
[dependencies]
google-maps-places = "0.1"
Available
features
:async-graphql
-
Fetch place results
use google_maps_places::{Places, Response}; let places = &Places { api_key: "api-key" }; let res = match places.get_map_place("ChIJATaCWGU3zDER32m__CAwDyY") { Ok(b) => b, Err(e) => { println!("Error {:?}", e); return; } }; match res { Response::Ok { result } => { println!("id : {}", result.place_id); println!("name : {}", result.name); println!("formatted_address : {}", result.formatted_address); println!(""); println!("street_number : {}", result.street_number().unwrap_or(""),); println!("route : {}", result.route().unwrap_or("")); println!("sublocality : {}", result.sublocality().unwrap_or("")); println!("postal_code : {}", result.postal_code().unwrap_or("")); println!("city : {}", result.city().unwrap_or("")); println!("state : {}", result.state().unwrap_or("")); println!("country : {}", result.country().unwrap_or("")); } Response::ZeroResults => { println!("Zero results"); } Response::InvalidRequest => { println!("Invalid Request"); } Response::OverQueryLimit => { println!("Over Query Limit"); } Response::RequestDenied { error_message } => { println!("Request Denied: {}", error_message); } Response::UnknownError => { println!("Unknown Error") } };
Todo:
- Documentation
- Helper methods to simplify obtaining location details (ie., country, state, city)
- Cover more Google Maps Places API responses
Dependencies
~3–15MB
~211K SLoC