use serde::{Deserialize, Serialize}; #[async_std::main] async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync + 'static>> { #[derive(Deserialize, Serialize)] struct Ip { ip: String, } let uri = "https://httpbin.org/post"; let data = &Ip { ip: "129.0.0.1".into(), }; let mut res = surf::post(uri).body_json(data)?.await?; let body = res.body_string().await?; println!("{}", body); let uri = "https://api.ipify.org?format=json"; let Ip { ip } = surf::get(uri).recv_json().await?; println!("{}", ip); assert!(ip.len() > 10); Ok(()) }
Postができる。actix-webでpostされたデータを受け取ることができるかは要確認。