Avatar ·

如何在 Rust 中执行 HTTP 请求?没有内置函数吗?

你好!我刚开始从 Python 和 JavaScript 学习 Rust,遇到了一个问题。在 Python 中,我习惯写 `requests.get(url)`,一切都能正常工作。在 Rust 中,我期望在标准库中找到类似的东西,但显然它没有。 我尝试仅使用标准库向公共 API 发送一个简单的 GET 请求,但没有成功。以下是我的代码,显然无法编译: ```rust use std::net::TcpStream; use std::io::Read; fn main() { let mut response = String::new(); let mut stream = TcpStream::connect("http://api.example.com/data").unwrap(); stream.read_to_string(&mut response).unwrap(); println!("{}", response); } ``` 错误提示与协议有关,并且缺少 HTTP 支持。我理解 Rust 是一种系统级语言,但难道就没有一种简单的方法可以在不引入大量依赖的情况下发送请求吗?我需要从服务器获取 JSON 并解析它。 我听说过 `reqwest` 和 `ureq` 这两个 crate,但不确定该选哪一个。