1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
// Copyright 2017 rust-multipart-rfc7578 Developers // // Licensed under the Apache License, Version 2.0, <LICENSE-APACHE or // http://apache.org/licenses/LICENSE-2.0> or the MIT license <LICENSE-MIT or // http://opensource.org/licenses/MIT>, at your option. This file may not be // copied, modified, or distributed except according to those terms. // //! This crate contains an implementation of the multipart/form-data media //! type described in [RFC 7578](https://tools.ietf.org/html/rfc7578) for //! [hyper](https://hyper.rs/). //! //! ## Usage //! //! Declare the dependency: //! //! ```toml //! [dependencies] //! hyper-multipart-rfc7578 = "0.1.0" //! ``` //! //! Import the crate: //! //! ```rust //! extern crate hyper_multipart_rfc7578 as multipart; //! ``` //! //! ## Example: //! //! With a custom client: //! //! ```rust //! # extern crate hyper; //! # extern crate hyper_multipart_rfc7578 as hyper_multipart; //! //! use hyper::{ //! rt::{self, Future}, //! Client, Request, //! }; //! use hyper_multipart::client::{self, multipart}; //! //! # 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>(&mut req_builder).unwrap(); //! //! rt::run( //! client //! .request(req) //! .map(|_| println!("done...")) //! .map_err(|_| println!("an error occurred")), //! ); //! # } //! ``` //! //! With a default client: //! //! ```rust //! # extern crate hyper; //! # extern crate hyper_multipart_rfc7578 as hyper_multipart; //! //! use hyper::{ //! rt::{self, Future}, //! Client, Request, //! }; //! use hyper_multipart::client::{self, multipart}; //! //! # 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>(&mut req_builder) //! .unwrap(); //! //! rt::run( //! client //! .request(req) //! .map(|_| println!("done...")) //! .map_err(|_| println!("an error occurred")), //! ); //! # } //! ``` //! extern crate bytes; extern crate common_multipart_rfc7578 as common_multipart; extern crate futures; extern crate hyper; mod body; pub mod client { pub use common_multipart::client::Error; pub mod multipart { pub use body::Body; pub use common_multipart::client::multipart::{BoundaryGenerator, Form}; } }