0

我在 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-bit)

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   
4

1 回答 1

2

您的代码中有错误的 URL。代替: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)

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

于 2013-04-23T18:24:02.207 回答