Struct curl::easy::Part
[−]
[src]
pub struct Part<'form, 'data> { /* fields omitted */ }
One part in a multipart upload, added to a Form
.
Methods
impl<'form, 'data> Part<'form, 'data>
[src]
fn contents(&mut self, contents: &'data [u8]) -> &mut Self
A pointer to the contents of this part, the actual data to send away.
fn file_content<P>(&mut self, file: P) -> &mut Self where
P: AsRef<Path>,
P: AsRef<Path>,
Causes this file to be read and its contents used as data in this part
This part does not automatically become a file upload part simply because its data was read from a file.
Errors
If the filename has any internal nul bytes or if on Windows it does not
contain a unicode filename then the add
function will eventually
return an error.
fn file<P: ?Sized>(&mut self, file: &'data P) -> &mut Self where
P: AsRef<Path>,
P: AsRef<Path>,
Makes this part a file upload part of the given file.
Sets the filename field to the basename of the provided file name, and it reads the contents of the file and passes them as data and sets the content type if the given file matches one of the internally known file extensions.
The given upload file must exist entirely on the filesystem before the upload is started because libcurl needs to read the size of it beforehand.
Multiple files can be uploaded by calling this method multiple times and content types can also be configured for each file (by calling that next).
Errors
If the filename has any internal nul bytes or if on Windows it does not
contain a unicode filename then this function will cause add
to return
an error when called.
fn content_type(&mut self, content_type: &'data str) -> &mut Self
Used in combination with Part::file
, provides the content-type for
this part, possibly instead of choosing an internal one.
Panics
This function will panic if content_type
contains an internal nul
byte.
fn filename<P: ?Sized>(&mut self, name: &'data P) -> &mut Self where
P: AsRef<Path>,
P: AsRef<Path>,
Used in combination with Part::file
, provides the filename for
this part instead of the actual one.
Errors
If name
contains an internal nul byte, or if on Windows the path is
not valid unicode then this function will return an error when add
is
called.
fn buffer<P: ?Sized>(&mut self, name: &'data P, data: Vec<u8>) -> &mut Self where
P: AsRef<Path>,
P: AsRef<Path>,
This is used to provide a custom file upload part without using the
file
method above.
The first parameter is for the filename field and the second is the in-memory contents.
Errors
If name
contains an internal nul byte, or if on Windows the path is
not valid unicode then this function will return an error when add
is
called.
fn content_header(&mut self, headers: List) -> &mut Self
Specifies extra headers for the form POST section.
Appends the list of headers to those libcurl automatically generates.
fn add(&mut self) -> Result<(), FormError>
Attempts to add this part to the Form
that it was created from.
If any error happens while adding, that error is returned, otherwise
Ok(())
is returned.