使用httr通过pem证书连接到API

时间:2017-09-22 10:00:21

标签: r rcurl httr

我已成功连接到使用以下语法创建的公共应用:

library(httr)
public_app <- oauth_app("website_public",
               key    = "BLAHBLAHBLAHBLAH",
               secret = "ADIFFERENTBLAHBLAH")
website_token_public <- oauth1.0_token(oauth_endpoint(authorize = 'https://api.website.com/oauth/Authorize',request = 'https://api.website.com/oauth/RequestToken',access = 'https://api.website.com/oauth/AccessToken'),public_app)
req=GET("https://api.website.com/api/stuff/uniquestring",config(token=website_token_public))

但是,作为一个公共应用程序,它会过期,所以我试图使用基于X509证书的私有应用程序。 我已成功创建* .cer证书并将其上传到网站应用程序。 我现在正在尝试并且失败,通过R连接到它。 我(虽然有限)理解是私钥不需要令牌,这对我来说oauth1.0_token位是多余的。但如果是这种情况,我如何/在何处指定我的密钥和秘密。 到目前为止我已经:

private_app <- oauth_app("website_private",key = "SOMEMOREBLAH",secret = "FURTHERBLAH")
req <- GET("https://api.website.com/api/stuff/uniquestring", config(cainfo='/filepath/websitekey.pem'))

但我无法弄清楚我是否需​​要把钥匙和钥匙放在一起。秘密进入GET-config() - 如果是这样,在哪里?或者我还需要指定oauth1.0_token吗?我尝试了各种迭代:

website_token_private <- oauth1.0_token(oauth_endpoint(request = NULL,authorize = NULL, access = 'https://api.website.com/oauth/AccessToken'), app=private_app)

所有建议都非常感谢!

感谢。

0 个答案:

没有答案