Я пытаюсь написать R-пакет, который обращается к некоторым данным через REST API. Однако API не использует проверку подлинности HTTP, а скорее полагается на файлы cookie, чтобы хранить учетные данные в сеансе.
По сути, я хотел бы заменить следующие две строки из bash script двумя R-функциями: один для выполнения входа в систему и сохранения файла cookie сеанса, а второй для получения данных.
curl -X POST -c cookies.txt -d"username=xxx&password=yyy" http://api.my.url/login
curl -b cookies.txt http://api.my.url/data
Я явно не понимаю, как работает RCURL с параметрами завитки. Мой script как он есть:
library(RCurl)
curl <- getCurlHandle()
curlSetOpt(cookiejar='cookies.txt', curl=curl)
postForm("http://api.my.url/login", username='xxx', password='yyy', curl=curl)
getURL('http://api.my.url/data", curl=curl)
Финал getURL()
завершается с ошибкой "Не вошел". сообщение с сервера, и после существования файла postForm()
no cookies.txt
.