RCurl (version 1.95-4.7)

curlSetOpt: Set values for the CURL options

Description

This function allows us to set values for the possible options in the CURL data structure that defines the HTTP request. These options persist across calls in the CURLHandle object.

Usage

curlSetOpt(..., .opts = list(), curl = getCurlHandle(),
            .encoding = integer(), .forceHeaderNames = FALSE,
             .isProtected = FALSE)

Arguments

...
a named list of curl options to set after the handle has been created.
.opts
a named list or CURLOptions object identifying the curl options for the handle.
curl
the CURLHandle object created earlier via a call to getCurlHandle or dupCurlHandle
.encoding
an integer or a string that explicitly identifies the encoding of the content that is returned by the HTTP server in its response to our query. The possible strings are UTF-8 or ISO-8859-1 and the integers
.forceHeaderNames
a logical value which if TRUE allows the caller to explicitly indicate that the HTTPHEADER option needs to have the names prefixed to the strings. This removes any ambiguity caused by the presence of ':' in the values appeari
.isProtected
a logical vector (or value that is repeated) specifying which of the values in ...and .opts need to be explicitly protected from garbage collection or not. The basic idea is that we specify FALSE if the value being s

Value

  • An integer value giving the status of the return. This should be 0 as if there was an error in the libcurl mechiansim, we will throw it there.

References

Curl homepage http://curl.haxx.se

See Also

getCurlHandle dupCurlHandle

Examples

Run this code
if(url.exists("http://www.omegahat.org")) {

  curl = getCurlHandle()
     # Note the header that extends across two lines with the second line
     # prefixed with white space.
   curlSetOpt( .opts = list(httpheader = c(Date = "Wed, 1/2/2000 10:01:01",
                            foo="abc
    extra line"), verbose = TRUE),
               curl = curl)
   ans = getURL("http://www.omegahat.org", curl = curl)
}

Run the code above in your browser using DataCamp Workspace