mirror of
https://github.com/openharmony/third_party_rust_http.git
synced 2026-07-01 20:44:03 -04:00
9cceef63f01678bb47d09085dc59a866312b0d72
* Add unit test for rejecting invalid UTF-8 * Add Authority::from_static() test * Refactor uri::Authority Extract the common code from three ways of creating an Authority into a private create_authority() function. * Add comments to explain the safety of Authority The comments describe the preconditions and postconditions that together ensure that the one use of 'unsafe' in uri/authority.rs is sound. * Fix typo
HTTP
A general purpose library of common HTTP types
More information about this crate can be found in the crate documentation.
Usage
To use http, first add this to your Cargo.toml:
[dependencies]
http = "0.2"
Next, add this to your crate:
extern crate http;
use http::{Request, Response};
fn main() {
// ...
}
Examples
Create an HTTP request:
extern crate http;
use http::Request;
fn main() {
let request = Request::builder()
.uri("https://www.rust-lang.org/")
.header("User-Agent", "awesome/1.0")
.body(())
.unwrap();
}
Create an HTTP response:
extern crate http;
use http::{Response, StatusCode};
fn main() {
let response = Response::builder()
.status(StatusCode::MOVED_PERMANENTLY)
.header("Location", "https://www.rust-lang.org/install.html")
.body(())
.unwrap();
}
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Description
Languages
Rust
100%