1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2018年8月10日

#258#hyper

MIT/Apache

26KB
449

HTTPer

Build Status

基于 hyper 的异步 HTTP(S) 客户端。

为什么

在我开始编写这个客户端的部分时,我找不到任何高级异步 http(s) 客户端。我也倾向于为基于 hyper 的多个不同项目重复编写相同的代码,总是想能够向 https 地址发送请求并将响应体反序列化为 json。

用法

一个简单的用法示例

extern crate httper;
extern crate tokio;
#[macro_use]
extern crate serde_derive;

use httper::client::HttperClient;
use tokio::runtime::Runtime;

fn main() {
    let mut rt = Runtime::new().unwrap();

    let httper_client = HttperClient::new();

    #[derive(Debug, Deserialize)]
    struct Contributor {
        id: u32,
        login: String,
    }

    // Call .send() to fire the request and then call .json::<Vec<Contributor>>()
    // to turn the json response into a Vec containing Contributor.
    let result = rt.block_on(
        httper_client
            .get("https://api.github.com/repos/drager/httper/contributors")
            .send()
            .json::<Vec<Contributor>>(),
    );

    println!("Contributors: {:?}", result);
}

功能和错误

请在 问题跟踪器 中提交功能请求和错误。

许可协议

许可协议为以下之一:

依赖项

~9–19MB
~264K SLoC