Kaynağa Gözat

Correctly extract member list from Zulip API

Mark Rousskov 5 yıl önce
ebeveyn
işleme
f6b2d8d757
1 değiştirilmiş dosya ile 7 ekleme ve 2 silme
  1. 7 2
      src/zulip.rs

+ 7 - 2
src/zulip.rs

@@ -212,9 +212,9 @@ async fn execute_for_other_user(
             .unwrap());
         }
     };
-    let members = members.json::<Vec<Member>>().await;
+    let members = members.json::<MembersApiResponse>().await;
     let members = match members {
-        Ok(members) => members,
+        Ok(members) => members.members,
         Err(e) => {
             return Ok(serde_json::to_string(&Response {
                 content: &format!("Failed to get list of zulip users: {:?}.", e),
@@ -292,6 +292,11 @@ async fn execute_for_other_user(
     Ok(output)
 }
 
+#[derive(serde::Deserialize)]
+struct MembersApiResponse {
+    members: Vec<Member>,
+}
+
 #[derive(serde::Deserialize)]
 struct Member {
     email: String,