Extract content from a request.
There are currently three ways to retrieve the contents of a request:
as a raw object (
as = "raw"), as a character vector,
as = "text"), and as parsed into an R object where possible,
as = "parsed"). If
as is not specified,
does its best to guess which output is most appropriate.
content(x, as = NULL, type = NULL, encoding = NULL, ...)
- request object
- desired type of output:
contentattempts to automatically figure out which one is most appropriate, based on the content-type.
- MIME type (aka internet media type) used to override
the content type returned by the server. See
http://en.wikipedia.org/wiki/Internet_media_typefor a list of common types.
- For text, overrides the charset or the Latin1 (ISO-8859-1) default, if you know that the server is returning the incorrect encoding as the charset in the content-type. Use for text and auto outputs.
- Other parameters parsed on to the parsing functions, if
as = "auto"
content currently knows about the following mime types:
as = "parsed" is provided as a convenience only: if the type you
are trying to parse is not available, use
as = "text" and parse
content() in a package, DO NOT use on
as = "parsed".
Instead, check the mime-type is what you expect, and then parse yourself.
This is safer, as you will fail informatively if the API changes, and
you will protect yourself against changes to httr.
r <- POST("http://httpbin.org/post", body = list(a = 1, b = 2)) content(r) # automatically parses JSON cat(content(r, "text"), "\n") # text content content(r, "raw") # raw bytes from server rlogo <- content(GET("http://cran.r-project.org/Rlogo.jpg")) plot(0:1, 0:1, type = "n") rasterImage(rlogo, 0, 0, 1, 1)