带有 getURL 和 RCurl 错误的 R API 连接(Localytics)

标签 r api ssl parameters rcurl

我正在尝试通过他们的 API ( https://api.localytics.com/docs#query ) 从移动分析服务 Localytics 获取数据。特别是我想在 R 中翻译以下 cURL 命令:

curl --get  'https://api.localytics.com/v1/query' \
 --user 'API_KEY:API_SECRET' \
 --data 'app_id=APP_ID' \
 --data 'metrics=users' \
 --data 'dimensions=day' \
 --data-urlencode 'conditions={"day":["between","2013-04-01","2013-04-07"]}'

我的 R 代码目前看起来像这样。 APIKey 和 API secret 当然会被实际的 key 所取代。但是,我收到一条错误消息,指出至少必须指定一个维度或指标。

object <- getURL('https://api.localytics.com/v1/query', userpwd = "API_Key:API_Secret", httpheader=list(app_id = "app_id=03343434353534",
metrics = "metrics=users",
dimensions = "dimensions=day",
conditions = toJSON('conditions={"day":["between","2014-07-01","2014-07-10"]}')),  ssl.verifypeer = FALSE)

要使其正常工作需要进行哪些更改。

在此先感谢您帮助我, 彼得

最佳答案

httr 的开发版本特别容易:

library(httr)

r <- POST('https://api.localytics.com/v1/query',  
  body = list(
    app_id = "APP_ID",
    metrics = "users",
    dimensions = "day",
    conditions = list(
      day = c("between", "2014-07-01", "2004-07-10")
    )
  ), 
  encode = "json",
  authenticate("API_key", "API_secret")
)
stop_for_status(r)
content(r)

(我将请求转换为 POST 并对所有内容使用 json 编码,如 API 文档中所述)。

如果您想准确查看发送到服务器的内容,请使用 verbose() 配置。

关于带有 getURL 和 RCurl 错误的 R API 连接(Localytics),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24756543/

相关文章:

r - 根据最后 n 个字符提取值

java - 如何从包含 url 的文件自动生成 REST 端点?

android - Android 应用程序客户端和服务器通信的 SSL 安全性

python - pip install numpy 没有安装文件

c++ - Poco + OpenSSL + CA PEM : "Unacceptable certificate" error for 1 out of 2 identical sites

r - 如何打印 purrr::map 在 R 中作用的数据帧行

r - Shiny 的条件信息框输出

r - 如何在 R 的回归输出中显示变量名称(存储在列表中)?

api - 如何使用 Microsoft Graphs 访问共享邮箱

json - Slick Slider 未使用 API json 初始化