在Rust Hyper中,可以使用hyper::body::to_bytes
函数将响应体作为字符串读取。该函数将响应体转换为字节数组,并返回一个hyper::body::Bytes
类型的Future。然后,可以使用.await
方法等待Future的完成,并使用std::str::from_utf8
函数将字节数组转换为字符串。
以下是一个示例代码:
use hyper::{Body, Client, Uri};
use hyper::body::to_bytes;
#[tokio::main]
async fn main() {
let client = Client::new();
let uri: Uri = "http://example.com".parse().unwrap();
let response = client.get(uri).await.unwrap();
let body_bytes = to_bytes(response.into_body()).await.unwrap();
let body_str = std::str::from_utf8(&body_bytes).unwrap();
println!("{}", body_str);
}
在上述代码中,首先创建了一个Hyper客户端client
,然后使用client.get(uri).await
发送GET请求并获取响应。接下来,使用to_bytes
函数将响应体转换为字节数组,并使用std::str::from_utf8
函数将字节数组转换为字符串。最后,将字符串打印出来。
这是一个简单的示例,你可以根据实际需求进行适当的修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云