Write http request and http response safely.
Build a http request:
use hans_http::{RequestMethod, HttpRequestBuilder, Error};
fn main() -> Result<(), Error> {
let content = "{\"username\": \"Hans\"}";
let content_len = content.len().to_string();
let http_request = HttpRequestBuilder::new()
.set_request_method(RequestMethod::POST)
.set_url("/users")
.add_header(("Content-Type", "application/json"))
.add_header(("Content-Length", &content_len))
.set_body(content)
.build()?;
// Result
println!("{:?}", http_request);
println!("{}", http_request.to_string());
Ok(())
}
Build a http response
use hans_http::{StatusCode, HttpResponseBuilder, Error};
fn main() -> Result<(), Error> {
let content = "{\"username\": \"Hans\"}";
let content_len = content.len().to_string();
let http_response = HttpResponseBuilder::new()
.set_status_code(StatusCode::Ok)
.add_header(("Content-Type", "application/json"))
.add_header(("Content-Length", &content_len))
.set_body(&content)
.build()?;
// Result
println!("{:?}", http_response);
println!("{}", http_response.to_string());
Ok(())
}