Crate izihawa_hyper_multipart
source · [−]Expand description
This crate contains an implementation of the multipart/form-data media type described in RFC 7578 for hyper.
Usage
Declare the dependency:
[dependencies]
izihawa-hyper-multipart = "1.0"
Import the crate:
extern crate izihawa_hyper_multipart as multipart;
Example:
With a custom client:
extern crate izihawa_hyper_multipart as hyper_multipart;
use hyper::{Client, Request};
use hyper_multipart::client::{self, multipart};
#[tokio::main]
async fn main() {
let client = Client::builder().build_http();
let mut form = multipart::Form::default();
form.add_text("test", "Hello World");
let mut req_builder = Request::get("http://localhost/upload");
let req = form.set_body::<multipart::Body>(req_builder).unwrap();
if let Ok(_) = client.request(req).await {
println!("done...");
} else {
eprintln!("an error occurred");
}
}
With a default client:
extern crate izihawa_hyper_multipart as hyper_multipart;
use hyper::{
Client, Request,
};
use hyper_multipart::client::{self, multipart};
#[tokio::main]
async fn main() {
let client = Client::new();
let mut form = multipart::Form::default();
form.add_text("test", "Hello World");
let mut req_builder = Request::get("http://localhost/upload");
let req = form.set_body_convert::<hyper::Body, multipart::Body>(req_builder)
.unwrap();
if let Ok(_) = client.request(req).await {
println!("done...");
} else {
eprintln!("an error occurred");
}
}