19d2530c3c411ee930ecd08dff7a19eaa95aa5ff
1. Add a shields.io license badge to allow quick, effective identification of the license without requiring the user to scroll to the bottom of the page. 2. Remove the single-word license section at the bottom of the page as it is now superfluous and looks unpolished. 3. Move the crates.io badge beyond the license badge so that its orange colour won't knock the viewer's brain off fast-path evaluation when using the badge row as a status dashboard (as explained in #525). Fixes #525
hyper
A Modern HTTP library for Rust.
Overview
Hyper is a fast, modern HTTP implementation written in and for Rust. It is a low-level typesafe abstraction over raw HTTP, providing an elegant layer over "stringly-typed" HTTP.
Hyper offers both an HTTP/S client and HTTP server which can be used to drive complex web applications written entirely in Rust.
The documentation is located at http://hyperium.github.io/hyper.
Example
Hello World Server:
extern crate hyper;
use std::io::Write;
use hyper::Server;
use hyper::server::Request;
use hyper::server::Response;
use hyper::net::Fresh;
fn hello(_: Request, res: Response<Fresh>) {
let mut res = res.start().unwrap();
res.write_all(b"Hello World!").unwrap();
res.end().unwrap();
}
fn main() {
Server::http(hello).listen("127.0.0.1:3000").unwrap();
}
Client:
extern crate hyper;
use std::io::Read;
use hyper::Client;
use hyper::header::Connection;
fn main() {
// Create a client.
let mut client = Client::new();
// Creating an outgoing request.
let mut res = client.get("http://www.gooogle.com/")
// set a header
.header(Connection::close())
// let 'er go!
.send().unwrap();
// Read the Response.
let mut body = String::new();
res.read_to_string(&mut body).unwrap();
println!("Response: {}", body);
}
Languages
Rust
94.5%
C
5.2%
Shell
0.3%