Serialzing lists into text-lists can make it easier to work with web-service APIs. This package can help you work with http-query lists in the "R world", helping you serialize it for use in the "remote world". In many cases, parameters for http queries are formatted differently from R:
The goal of this package is to make that translation process easier.
You can install srlst from github with:
# install.packages("devtools") devtools::install_github("ijlyttle/srlst")
library("httr") library("lubridate") library("srlst")
Let's consider a web-serice endpoint that accepts query-parameters in the format described above. You wish to work with the query-parameters in an R-sensible way. The function
serialize_list() is used to serialize the elements of your list into the format expected by the web-service.
query_params <- list( delay = dseconds(3), print = TRUE, next_steps = c("collate", "send"), number = 20 ) serialize_list(query_params) #> $delay #>  "3000" #> #> $print #>  "true" #> #> $next_steps #>  "collate,send" #> #> $number #>  "20"
Thus, you can use the httr package to build your URL, attaching the query.
url <- parse_url("https://useful.site.com/service") url$query <- serialize_list(query_params) build_url(url) #>  "https://useful.site.com/service?delay=3000&print=true&next_steps=collate%2Csend&number=20"
If you need to change the default behavior of the serializer, the
serialize_list() function lets you set the delimiter. It also lets you set the
locale(), which is used to specify the format for individual types (like logical and time-difference).
data-foo = "true". You can use
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.