core-api-upgrade

This commit is contained in:
Untone 2023-11-28 12:14:18 +03:00
parent 77420289be
commit e44590a6a3

View File

@ -65,12 +65,8 @@ pub async fn get_auth_id(token: &str) -> Result<i32, Box<dyn Error>> {
async fn get_shout_followers(shout_id: &str) -> Result<Vec<i32>, Box<dyn Error>> { async fn get_shout_followers(shout_id: &str) -> Result<Vec<i32>, Box<dyn Error>> {
let api_base = env::var("API_BASE")?; let api_base = env::var("API_BASE")?;
let query = r#"query ShoutFollowers($shout: Int!) { let query = r#"query GetShoutFollowers($slug: String, shout_id: Int) {
shoutFollowers(shout: $shout) { get_shout_followers(slug: $slug, shout_id: $shout_id) { id }
follower {
id
}
}
} }
"#; "#;
let shout_id = shout_id.parse::<i32>()?; let shout_id = shout_id.parse::<i32>()?;
@ -79,7 +75,7 @@ async fn get_shout_followers(shout_id: &str) -> Result<Vec<i32>, Box<dyn Error>>
}); });
let body = json!({ let body = json!({
"query": query, "query": query,
"operationName": "ShoutFollowers", "operationName": "GetShoutFollowers",
"variables": variables "variables": variables
}); });
@ -88,11 +84,11 @@ async fn get_shout_followers(shout_id: &str) -> Result<Vec<i32>, Box<dyn Error>>
if response.status().is_success() { if response.status().is_success() {
let response_body: serde_json::Value = response.json().await?; let response_body: serde_json::Value = response.json().await?;
let ids: Vec<i32> = response_body["data"]["shoutFollowers"] let ids: Vec<i32> = response_body["data"]["get_shout_followers"]
.as_array() .as_array()
.ok_or("Failed to parse follower array")? .ok_or("Failed to parse follower array")?
.iter() .iter()
.filter_map(|f| f["follower"]["id"].as_i64().map(|id| id as i32)) .filter_map(|f| f["id"].as_i64().map(|id| id as i32))
.collect(); .collect();
Ok(ids) Ok(ids)