form:AddBuffer(name, filename, content[, type, headers])
form:AddBuffer()is used to append a file upload section (from a buffer source) when building a multipart/formdata HTTP POST (sometimes referred to as RFC 2388-style posts). Once you've added all the sections you want included, pass the form handle as parameter to
#CURLOPT_HTTPPOST. See easy:SetOpt_HTTPPost for details.
You must call form:Free() after the form post has been done to free the resources.
Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header
#CURLOPT_HTTPHEADER as usual.
First, there are some basics you need to understand about multipart/formdata posts. Each part consists of
at least a
NAME and a
CONTENTS part. If the part is made for file upload, there are also a stored
CONTENT-TYPE and a
FILENAME. Below, we'll discuss what options you use to set these properties
in the parts you want to add to your post.
name argument must be a string which provides the name of this part. The name is not allowed to contain
zero-valued bytes. The
filename argument must be a string which provides the filename field in the content header.
content argument must contain the actual data to send. The optional argument
type can be used to set the
content-type for the part and the optional argument
headers can be used to specify extra headers for the form
POST section. This takes a table containing a list and appends the list of headers to those libcurl automatically