All Projects → drager → httper

drager / httper

Licence: Apache-2.0, MIT licenses found Licenses found Apache-2.0 LICENSE-APACHE MIT LICENSE-MIT
An asynchronous HTTP(S) client built on top of hyper.

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to httper

Gretchen
Making fetch happen in TypeScript.
Stars: ✭ 301 (+1781.25%)
Mutual labels:  http-client, request
Gout
gout to become the Swiss Army Knife of the http client @^^@---> gout 是http client领域的瑞士军刀,小巧,强大,犀利。具体用法可看文档,如使用迷惑或者API用得不爽都可提issues
Stars: ✭ 749 (+4581.25%)
Mutual labels:  http-client, request
Ky Universal
Use Ky in both Node.js and browsers
Stars: ✭ 421 (+2531.25%)
Mutual labels:  http-client, request
request-extra
⚡️ Extremely stable HTTP request module built on top of libcurl with retries, timeouts and callback API
Stars: ✭ 14 (-12.5%)
Mutual labels:  http-client, request
Http Client
A high-performance, high-stability, cross-platform HTTP client.
Stars: ✭ 86 (+437.5%)
Mutual labels:  http-client, request
electron-request
Zero-dependency, Lightweight HTTP request client for Electron or Node.js
Stars: ✭ 45 (+181.25%)
Mutual labels:  http-client, request
Urllib
Request HTTP(s) URLs in a complex world
Stars: ✭ 600 (+3650%)
Mutual labels:  http-client, request
requests-rs
Rust HTTP client library styled after awesome Python requests
Stars: ✭ 37 (+131.25%)
Mutual labels:  http-client, rust-library
Oh My Request
🔮 simple request library by java8
Stars: ✭ 44 (+175%)
Mutual labels:  http-client, request
Create Request
Apply interceptors to `fetch` and create a custom request function.
Stars: ✭ 34 (+112.5%)
Mutual labels:  http-client, request
go-axios
HTTP Request package for golang.
Stars: ✭ 29 (+81.25%)
Mutual labels:  http-client, request
Baseokhttpv3
🔥OkHttp的二次封装库,提供各种快速使用方法以及更为方便的扩展功能。提供更高效的Json请求和解析工具以及文件上传下载封装,HTTPS和Cookie操作也更得心应手。
Stars: ✭ 121 (+656.25%)
Mutual labels:  http-client, request
centra
Core Node.js HTTP client
Stars: ✭ 52 (+225%)
Mutual labels:  http-client, request
axios-for-observable
A RxJS wrapper for axios, same api as axios absolutely
Stars: ✭ 13 (-18.75%)
Mutual labels:  http-client, request
Curio
A Blazing Fast HTTP Client
Stars: ✭ 35 (+118.75%)
Mutual labels:  http-client, rust-library
Phin
Node HTTP client
Stars: ✭ 449 (+2706.25%)
Mutual labels:  http-client, request
WaterPipe
URL routing framework, requests/responses handler, and HTTP client for PHP
Stars: ✭ 24 (+50%)
Mutual labels:  http-client, request
puzzle-warden
🔌 Improved http client with epic features for creating fast and scalable applications.
Stars: ✭ 41 (+156.25%)
Mutual labels:  http-client, request
Ky
🌳 Tiny & elegant JavaScript HTTP client based on the browser Fetch API
Stars: ✭ 7,047 (+43943.75%)
Mutual labels:  http-client, request
Rxios
A RxJS wrapper for axios
Stars: ✭ 119 (+643.75%)
Mutual labels:  http-client, request

HTTPer

Build Status crates.io API docs MIT/Apache-2.0 licensed

A asynchronous HTTP(S) client built on top of hyper.

Why

At the time when I started writting parts of this client I couldn't find any higher level asynchronous http(s) client. I also tended to write the same code over and over again for serveral different projects based on hyper, always wanted to be able to make requests to https addresses and deserialize the response body into json.

Usage

A simple usage example:

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);
}

Features and bugs

Please file feature requests and bugs at the issue tracker.

License

Licensed under either of:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].