[][src]Struct hyper_multipart_rfc7578::client::multipart::Form

pub struct Form<'a> { /* fields omitted */ }

Implements the multipart/form-data media type as described by RFC 7578.

See.

Methods

impl<'a> Form<'a>[src]

pub fn new<G>() -> Form<'a> where
    G: BoundaryGenerator
[src]

Creates a new form with the specified boundary generator function.

Examples

struct TestGenerator;

impl BoundaryGenerator for TestGenerator {
    fn generate_boundary() -> String {
        "test".to_string()
    }
}

let form = multipart::Form::new::<TestGenerator>();

pub fn add_text<N, T>(&mut self, name: N, text: T) where
    N: Display,
    T: Into<String>, 
[src]

Adds a text part to the Form.

Examples

use common_multipart_rfc7578::client::multipart;

let mut form = multipart::Form::default();

form.add_text("text", "Hello World!");
form.add_text("more", String::from("Hello Universe!"));

pub fn add_reader<F, R>(&mut self, name: F, read: R) where
    F: Display,
    R: 'a + Read + Send
[src]

Adds a readable part to the Form.

Examples

use common_multipart_rfc7578::client::multipart;
use std::io::Cursor;

let bytes = Cursor::new("Hello World!");
let mut form = multipart::Form::default();

form.add_reader("input", bytes);

pub fn add_file<P, F>(&mut self, name: F, path: P) -> Result<(), Error> where
    F: Display,
    P: AsRef<Path>, 
[src]

Adds a file, and attempts to derive the mime type.

Examples

use common_multipart_rfc7578::client::multipart;

let mut form = multipart::Form::default();

form.add_file("file", file!()).expect("file to exist");

pub fn add_reader_file<F, G, R>(&mut self, name: F, read: R, filename: G) where
    F: Display,
    G: Into<String>,
    R: 'a + Read + Send
[src]

Adds a readable part to the Form as a file.

Examples

use common_multipart_rfc7578::client::multipart;
use std::io::Cursor;

let bytes = Cursor::new("Hello World!");
let mut form = multipart::Form::default();

form.add_reader_file("input", bytes, "filename.txt");

pub fn add_reader_file_with_mime<F, G, R>(
    &mut self,
    name: F,
    read: R,
    filename: G,
    mime: Mime
) where
    F: Display,
    G: Into<String>,
    R: 'a + Read + Send
[src]

Adds a readable part to the Form as a file with a specified mime.

Examples

use common_multipart_rfc7578::client::multipart;
use std::io::Cursor;

let bytes = Cursor::new("Hello World!");
let mut form = multipart::Form::default();

form.add_reader_file_with_mime("input", bytes, "filename.txt", mime::TEXT_PLAIN);

pub fn add_file_with_mime<P, F>(
    &mut self,
    name: F,
    path: P,
    mime: Mime
) -> Result<(), Error> where
    F: Display,
    P: AsRef<Path>, 
[src]

Adds a file with the specified mime type to the form. If the mime type isn't specified, a mime type will try to be derived.

Examples

use common_multipart_rfc7578::client::multipart;

let mut form = multipart::Form::default();

form.add_file_with_mime("data", "test.csv", mime::TEXT_CSV);

pub fn set_body<B>(self, req: &mut Builder) -> Result<Request<B>, Error> where
    B: From<Body<'a>>, 
[src]

Updates a request instance with the multipart Content-Type header and the payload data.

Examples

use hyper::{Method, Request};
use hyper_multipart_rfc7578::client::multipart;

let mut req_builder = Request::post("http://localhost:80/upload");
let mut form = multipart::Form::default();

form.add_text("text", "Hello World!");
let req = form.set_body::<multipart::Body>(&mut req_builder).unwrap();

pub fn set_body_convert<B, I>(
    self,
    req: &mut Builder
) -> Result<Request<B>, Error> where
    I: From<Body<'a>> + Into<B>, 
[src]

Updates a request instance with the multipart Content-Type header and the payload data.

Allows converting body into an intermediate type.

Examples

use hyper::{Body, Method, Request};
use hyper_multipart_rfc7578::client::multipart;

let mut req_builder = Request::post("http://localhost:80/upload");
let mut form = multipart::Form::default();

form.add_text("text", "Hello World!");
let req = form.set_body_convert::<hyper::Body, multipart::Body>(&mut req_builder).unwrap();

Trait Implementations

impl<'a> Default for Form<'a>[src]

fn default() -> Form<'a>[src]

Creates a new form with the default boundary generator.

Auto Trait Implementations

impl<'a> Send for Form<'a>

impl<'a> !Sync for Form<'a>

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T