Как пройти аутентификацию в Reddit с помощью RCurl

Я пытался пройти аутентификацию в Reddit из R с помощью RCurl на основе этого примера из Гитхаб Reddit:

 curl -X POST -d 'grant_type=password&username=reddit_bot&password=snoo' --user   'p-jcoLKBynTLew:gko_LXELoV07ZBNUXrvWZfzE3aI' https://ssl.reddit.com/api/v1/access_token

Я попытался преобразовать его в команду RCurl следующим образом:

postForm("https://ssl.reddit.com/api/v1/access_token?grant_type=password",
     username = "MyUserName",
     password = "MyPassword",
     .opts = list(userpwd = "MyClientid:MySecret")
     )

Но получаю ошибку: Error: Unauthorized

Я не уверен, что я действительно делаю с преобразованием команды curl в Rcurl. Спасибо за любую помощь, которую вы могли бы предоставить!


person Nick DiQuattro    schedule 05.10.2014    source источник


Ответы (1)


Попробуйте этот код httr:

library(httr)

POST("https://ssl.reddit.com/api/v1/access_token",
  body = list(
    grant_type = "password",
    username = "MyUserName",
    password = "MyPassword"
  ),
  encode = "form",
  authenticate("p-jcoLKBynTLew", "gko_LXELoV07ZBNUXrvWZfzE3aI")
)
person hadley    schedule 06.10.2014
comment
Это сработало отлично, спасибо! Для всех, кто сталкивается с этим, буква T в Grant_Type должна быть строчной, чтобы работать. - person Nick DiQuattro; 07.10.2014