3个版本
0.1.13 | 2022年2月14日 |
---|---|
0.1.12 |
|
#453 in HTTP客户端
每月41次下载
595KB
12K SLoC
cogo-http
- 为Cogo提供的协程HTTP框架,原始代码源自Hyper,我们改进了底层逻辑
- 支持HTTP服务器
- 支持HTTP客户端
性能
- 平台(16CPU/32线程AMD Ryzen 9 5950X,32GB内存,操作系统:Ubuntu-20.04)
- TechEmpowerBench分支项目
示例服务器
#[deny(unused_variables)]
extern crate cogo_http;
use cogo_http::route::Route;
use cogo_http::server::{Request, Response};
fn hello(req: Request, res: Response) {
res.send(b"Hello World!").unwrap();
}
fn main() {
let _listening = cogo_http::Server::http("0.0.0.0:3000").unwrap()
.handle(hello);
println!("Listening on http://127.0.0.1:3000");
}
示例客户端
extern crate cogo_http;
use std::io;
use cogo_http::Client;
use cogo_http::header::Connection;
fn main() {
let mut url = "http://www.baidu.com".to_string();
let client = Client::new();
let mut res = client.get(&url)
.header(Connection::close())
.send().unwrap();
println!("Response: {}", res.status);
println!("Headers:\n{}", res.headers);
io::copy(&mut res, &mut io::stdout()).unwrap();
}
依赖关系
~6–33MB
~481K SLoC