POST file to a server.
POST file to a server.
POST(url = NULL, config = list(), ..., body = NULL, encode = c("multipart", "form", "json", "raw"), handle = NULL)
- the url of the page to retrieve
- Additional configuration settings such as http
authenticate), additional headers (
add_headers), cookies (
set_cookies) etc. See
configfor full details and list of helpers.
- Further named parameters, such as
path, etc, passed on to
modify_url. Unnamed parameters will be combined with
- One of the following:
FALSE: No body. This is typically not used with
PATCH, but can be useful if you need to send a bodyless request (like
NULL: An empty body
"": A length 0 body
upload_file("path/"): The contents of a file. The mime type will be guessed from the extension, or can be supplied explicitly as the second argument to
- A character or raw vector: sent as is in body. Use
content_typeto tell the server what sort of data you are sending.
- A named list: See details for encode.
- If the body is a named list, how should it be encoded? Can be
one of form (application/x-www-form-urlencoded), multipart,
(multipart/form-data), or json (application/json).
For "multipart", list elements can be strings or objects created by
upload_file. For "form", elements are coerced to strings and escaped, use
I()to prevent double-escaping. For "json", parameters are automatically "unboxed" (i.e. length 1 vectors are converted to scalars). To preserve a length 1 vector as a vector, wrap in
I(). For "raw", either a character or raw vector. You'll need to make sure to set the
- The handle to use with this request. If not
supplied, will be retrieved and reused from the
handle_poolbased on the scheme, hostname and port of the url. By default httr requests to the same scheme/host/port combo. This substantially reduces connection time, and ensures that cookies are maintained over multiple requests to the same host. See
handle_poolfor more details.
b2 <- "http://httpbin.org/post" POST(b2, body = "A simple text string") POST(b2, body = list(x = "A simple text string")) POST(b2, body = list(y = upload_file(system.file("CITATION")))) POST(b2, body = list(x = "A simple text string"), encode = "json") # Various types of empty body: POST(b2, body = NULL, verbose()) POST(b2, body = FALSE, verbose()) POST(b2, body = "", verbose())