Чем Reqwest выше уровня Hyper?

Согласно документам на Hyper.rs,

Если вы ищете удобный HTTP-клиент, вы можете рассмотреть reqwest. Если вы ищете удобный HTTP-сервер, вы можете рассмотреть warp. Оба построены на основе этой библиотеки.

Глядя на API, кажется, что Hyper.rs уже довольно высокого уровня. Он поддерживает прокси, tls и файлы cookie... Почему Reqwest более высокого уровня?


person Evan Carroll    schedule 05.04.2021    source источник


Ответы (1)


Hyper требует, чтобы вы позаботились о деталях более низкого уровня, таких как синтаксический анализ URI (пример из документации):

let client = Client::new();
let uri = "http://httpbin.org/ip".parse()?;
let mut resp = client.get(uri).await?;

while let Some(chunk) = resp.body_mut().data().await {
    stdout().write_all(&chunk?).await?;
}

в то время как reqwest сделает это за вас (из docs.rs):

let body = reqwest::get("https://www.rust-lang.org")
    .await?
    .text()
    .await?;
person Clément Joly    schedule 05.04.2021