29 lines
588 B
Rust
29 lines
588 B
Rust
|
use eyre::Result;
|
||
|
use serde::{Deserialize, Serialize};
|
||
|
|
||
|
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||
|
pub struct Author {
|
||
|
pub id: i32,
|
||
|
pub name: String,
|
||
|
}
|
||
|
|
||
|
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||
|
pub struct Comment {
|
||
|
pub id: i32,
|
||
|
pub author: Author,
|
||
|
pub body: String,
|
||
|
pub in_reply_to: i32,
|
||
|
}
|
||
|
|
||
|
#[tokio::main]
|
||
|
async fn main() -> Result<()> {
|
||
|
let c: Comment = reqwest::get("https://xena.greedo.xeserv.us/files/comment2.json")
|
||
|
.await?
|
||
|
.error_for_status()?
|
||
|
.json()
|
||
|
.await?;
|
||
|
println!("comment: {:#?}", c);
|
||
|
|
||
|
Ok(())
|
||
|
}
|