首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >特性‘`std::未来:未来’不是为`std::result::Result<reqwest::Response,reqwest::Error>`实现的

特性‘`std::未来:未来’不是为`std::result::Result<reqwest::Response,reqwest::Error>`实现的
EN

Stack Overflow用户
提问于 2019-12-01 12:39:28
回答 1查看 2.7K关注 0票数 4

我正在尝试运行basic reqwest 示例

代码语言:javascript
复制
extern crate reqwest;
extern crate tokio;

#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
    let res = reqwest::Client::new()
        .get("https://hyper.rs")
        .send()
        .await?;

    println!("Status: {}", res.status());

    let body = res.text().await?;

    println!("Body:\n\n{}", body);

    Ok(())
}

我得到的错误:

代码语言:javascript
复制
   --> src/main.rs:6:15
    |
6   |       let res = reqwest::Client::new()
    |  _______________^
7   | |         .get("https://hyper.rs")
8   | |         .send()
9   | |         .await?;
    | |______________^ the trait `std::future::Future` is not implemented for `std::result::Result<reqwest::Response, reqwest::Error>`

生锈版:rustc 1.39.0 (4560ea788 2019-11-04)

图书馆版本:

代码语言:javascript
复制
reqwest = "0.9.22"
tokio = { version = "0.2.0-alpha.6", features = ["full"] }

有人知道这是怎么回事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-01 12:48:56

这里相同的问题正好相反。您使用的是reqwest-0.9,默认情况下它使用阻塞接口。更新到reqwest-0.10以获得异步接口。

如果不能更新到reqwest-0.10,则reqwest-0.9中的异步接口在reqwest::async中。例如reqwest::async::Client::new(...)

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59125573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档