client: Simplify json conversion
This commit is contained in:
parent
284faf9b4d
commit
3322d47957
1 changed files with 2 additions and 15 deletions
|
@ -1,4 +1,3 @@
|
||||||
use std::io::Write;
|
|
||||||
use crate::post::{Id, Post, RawPost, RawPosts};
|
use crate::post::{Id, Post, RawPost, RawPosts};
|
||||||
use anyhow::Result;
|
use anyhow::Result;
|
||||||
use base64::{engine::GeneralPurpose, Engine};
|
use base64::{engine::GeneralPurpose, Engine};
|
||||||
|
@ -79,17 +78,7 @@ impl Client {
|
||||||
) -> Result<Vec<Post>> {
|
) -> Result<Vec<Post>> {
|
||||||
self.request_limiter().await;
|
self.request_limiter().await;
|
||||||
let res = self.list_posts_raw(limit, tags, page).await?;
|
let res = self.list_posts_raw(limit, tags, page).await?;
|
||||||
let text = res.text().await?;
|
Ok(res.json::<RawPosts>().await?.into())
|
||||||
|
|
||||||
if cfg!(debug) {
|
|
||||||
let mut debug_file = std::fs::OpenOptions::new()
|
|
||||||
.write(true)
|
|
||||||
.create(true)
|
|
||||||
.open("/tmp/debug.json")?;
|
|
||||||
debug_file.write_all(text.as_bytes())?;
|
|
||||||
}
|
|
||||||
|
|
||||||
Ok(serde_json::from_str::<RawPosts>(text.as_str())?.into())
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Get a specific post
|
/// Get a specific post
|
||||||
|
@ -112,9 +101,7 @@ impl Client {
|
||||||
pub async fn get_post(&mut self, post_id: Id) -> Result<Post> {
|
pub async fn get_post(&mut self, post_id: Id) -> Result<Post> {
|
||||||
self.request_limiter().await;
|
self.request_limiter().await;
|
||||||
let res = self.get_post_raw(post_id).await?;
|
let res = self.get_post_raw(post_id).await?;
|
||||||
let text = res.text().await?;
|
Ok(res.json::<RawPost>().await?.into())
|
||||||
|
|
||||||
Ok(serde_json::from_str::<RawPost>(text.as_str())?.into())
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn get_post_raw(&mut self, post_id: Id) -> Result<Response> {
|
pub async fn get_post_raw(&mut self, post_id: Id) -> Result<Response> {
|
||||||
|
|
Loading…
Reference in a new issue