使用R的Windows上的ROauth,授权后的响应无效

时间:2013-04-23 17:07:35

标签: r twitter oauth twitter-oauth

我在R中使用以下脚本,但是当我将用户重定向到浏览器以获取oauth时。并输入PIN,它会打印错误。在这种情况下请帮助我。感谢。

cred=OAuthFactory$new(consumerKey="xxxxx",consumerSecret="xxxxx",requestURL="https://api.twitter.com/oauth/request_token",accessURL="https://api.twitter.com/oauth/authorize",authURL="https://api.twitter.com/oauth/access_token");
cred$handshake(cainfo="cacert.pem");

To enable the connection, please direct your web browser to: 
https://api.twitter.com/oauth/access_token?oauth_token=xxxxxxxxxxxxxxxxxxxx
When complete, record the PIN given to you and provide it here: xxxx

Error in cred$handshake(cainfo = "cacert.pem") :  Invalid response after authorization.  
You likely misentered your PIN, try rerunning this handshake & browser authorization to get a new PIN.
  

sessionInfo()   R版本3.0.0(2013-04-03)   平台:x86_64-w64-mingw32 / x64(64位)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] httr_0.2

loaded via a namespace (and not attached):
[1] digest_0.6.3   RCurl_1.95-4.1 stringr_0.6.2  tools_3.0.0   

1 个答案:

答案 0 :(得分:2)

您的代码中包含错误的网址。将https替换为http

requestURL <- "https://api.twitter.com/oauth/request_token"
accessURL = "http://api.twitter.com/oauth/access_token"
authURL = "http://api.twitter.com/oauth/authorize"
consumerKey = "mykey"
consumerSecret = "mysecret"
Cred <- OAuthFactory$new(consumerKey=consumerKey,
                             consumerSecret=consumerSecret,
                             requestURL=requestURL,
                             accessURL=accessURL, 
                             authURL=authURL)
Cred$handshake(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl") )
registerTwitterOAuth(Cred)

我通常会把它写成评论,但这似乎有很多。