传递给 Reqwest 的 Result::read_to_string 的变量从哪里获取数据?
Where does a variable passed to Reqwest's Result::read_to_string get the data from?
我正在学习 Rust 并且一直在玩这个例子来执行 HTTP GET 请求然后显示数据:
extern crate reqwest;
use std::io::Read;
fn run() -> Result<()> {
let mut res = reqwest::get("http://httpbin.org/get")?;
let mut body = String::new();
res.read_to_string(&mut body)?;
println!("Status: {}", res.status());
println!("Headers:\n{:#?}", res.headers());
println!("Body:\n{}", body);
Ok(())
}
我不明白变量 body
是如何最终得到正确数据的。对于 headers 和状态,我可以看到相关的函数,但对于 body 数据,它只对整个数据使用 read_to_string
?
res
对象有一个 read_to_string()
方法,它将响应存储到您传入的 String
中
res.read_to_string(&mut body);
编辑:从我的评论中导入:
reqwest::Response 0.6.2 documentation 表示 Read
表示 Response
:
Read the body of the Response
当前版本的文档中似乎缺少它。
我正在学习 Rust 并且一直在玩这个例子来执行 HTTP GET 请求然后显示数据:
extern crate reqwest;
use std::io::Read;
fn run() -> Result<()> {
let mut res = reqwest::get("http://httpbin.org/get")?;
let mut body = String::new();
res.read_to_string(&mut body)?;
println!("Status: {}", res.status());
println!("Headers:\n{:#?}", res.headers());
println!("Body:\n{}", body);
Ok(())
}
我不明白变量 body
是如何最终得到正确数据的。对于 headers 和状态,我可以看到相关的函数,但对于 body 数据,它只对整个数据使用 read_to_string
?
res
对象有一个 read_to_string()
方法,它将响应存储到您传入的 String
中
res.read_to_string(&mut body);
编辑:从我的评论中导入:
reqwest::Response 0.6.2 documentation 表示 Read
表示 Response
:
Read the body of the Response
当前版本的文档中似乎缺少它。