使用RCurl / httr进行Github基本授权

时间:2013-04-20 14:32:52

标签: r rcurl httr

我正在尝试使用instructions here从命令行创建OAuth令牌。我可以从命令行使用curl,并获得正确的响应

curl -u 'username:pwd' -d '{"scopes":["user", "gist"]}' \
  https://api.github.com/authorizations

现在,我想使用RCurlhttr在R中复制相同内容。这是我尝试过的,但两个命令都返回错误。谁能指出我在这里做错了什么?

httr::POST(
  'https://api.github.com/authorizations',
  authenticate('username', 'pwd'),
  body = list(scopes = list("user", "gist"))
)

RCurl::postForm(
  uri = 'https://api.github.com/authorizations',
  .opts = list(
    postFields = '{"scopes": ["user", "gist"]}',
    userpwd = 'username:pwd'
  )
)

1 个答案:

答案 0 :(得分:0)

这个问题已经很久了,但对某些人来说可能仍然有用:问题应该是opts参数以错误的方式传递(缺少curlOptions函数调用)。以下内容适用于不同的背景:

result <- getURL(url,.opts=curlOptions(postfields=postFields))

(是的,据我所知,你可以使用getURL函数进行POST请求)。