OAuth2 GitHub API令牌

时间:2012-09-12 07:09:03

标签: r api oauth github token

在github中设置应用程序后,我有一个客户端ID和客户端密钥,我不确定URL或回调URL是什么意思...我认为这会导致我出现问题

我还有一个私人仓库,我希望应用程序访问...

我想访问私人仓库的方式是通过R,所以我找到了一些可能有帮助的软件包,包括ROAuthoauth,但我不太清楚如何去关于使用这些来获取令牌,因为它们往往需要一堆URL来发出请求,而且我不确定获取这些令牌请求的URL是什么。 对于每个相应软件包的oauthOauth2Authorize函数的输入,查看http://developer.github.com/v3/oauth/似乎并没有太大帮助。

最终目标是从私人仓库中获取文件,因为source_url('private.repo.file.url')不起作用

我尝试使用curl通过bash进行基本身份验证,但无法找到令牌。

非常感谢任何有关如何执行此操作的演练示例。

P.S。这是来自r sourcing private repos from github

的后续问题

1 个答案:

答案 0 :(得分:0)

您只需要在https://github.com/settings/tokens创建一个oAuth令牌 并使用如下代码

通过GitHub API获取所需文件
library(RCurl)
library(devtools)
jsonRawFile <- fromJSON(getURL("https://api.github.com/repos/USERNAME/REPONAME/contents/filename.R",
       httpheader = c(Authorization = "token 38ebb0393fe1757ffde9c45d81adzzzzzzzzz",
                      "User-Agent" = "RCurl"),
       .opts = list(ssl.verifypeer = FALSE)))
source_url(jsonRawFile$download_url)

Authorization标头的格式应严格为“token”+ your_token_from_account。