mirror of
https://github.com/librespot-org/librespot.git
synced 2024-12-28 17:21:52 +00:00
25bd38fd13
Spotify’s apresolve will return the best AP based on the user’s location.
23 lines
541 B
Rust
23 lines
541 B
Rust
const APRESOLVE_ENDPOINT : &'static str = "http://apresolve.spotify.com/";
|
|
|
|
use hyper;
|
|
use std::io::Read;
|
|
use rustc_serialize::json;
|
|
|
|
#[derive(RustcDecodable)]
|
|
pub struct APResolveData {
|
|
ap_list: Vec<String>
|
|
}
|
|
|
|
pub fn apresolve() -> Result<Vec<String>, ()> {
|
|
let client = hyper::client::Client::new();
|
|
let mut res = String::new();
|
|
|
|
client.get(APRESOLVE_ENDPOINT)
|
|
.send().unwrap()
|
|
.read_to_string(&mut res).unwrap();
|
|
|
|
let data : APResolveData = json::decode(&res).unwrap();
|
|
|
|
Ok(data.ap_list)
|
|
}
|